From 5e7e8a3f82574729bc3a1e502e812b65e3b2ed97 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 9 Feb 2024 08:58:04 +0000 Subject: [PATCH] Rebuild pages at c4811e71b5a323c5f8567c2ece35bac25b1ae2fd --- HengShuHong_ip_master/authorship.json | 2 +- HengShuHong_ip_master/commits.json | 2 +- Kishen271828_ip_master/authorship.json | 2 +- Kishen271828_ip_master/commits.json | 2 +- LowTL_ip_master/authorship.json | 2 +- LowTL_ip_master/commits.json | 2 +- NGXZS_ip_master/authorship.json | 2 +- NGXZS_ip_master/commits.json | 2 +- PDHung1104_ip_master/authorship.json | 2 +- PDHung1104_ip_master/commits.json | 2 +- Praneet-25_ip_master/authorship.json | 2 +- Praneet-25_ip_master/commits.json | 2 +- adamzzq_ip_master/authorship.json | 2 +- adamzzq_ip_master/commits.json | 2 +- alvinnnnnnnnnn_ip_master/authorship.json | 2 +- alvinnnnnnnnnn_ip_master/commits.json | 2 +- annoy-o-mus_ip_master/authorship.json | 2 +- annoy-o-mus_ip_master/commits.json | 2 +- archive.zip | Bin 788983 -> 807543 bytes cayennegoh_ip_master/authorship.json | 2 +- cayennegoh_ip_master/commits.json | 2 +- djleong01_ip_master/authorship.json | 2 +- djleong01_ip_master/commits.json | 2 +- e0958902_ip_master/authorship.json | 2 +- e0958902_ip_master/commits.json | 2 +- hafizuddin-a_ip_master/authorship.json | 2 +- hafizuddin-a_ip_master/commits.json | 2 +- hongyijie06_ip_master/authorship.json | 2 +- hongyijie06_ip_master/commits.json | 2 +- lordgareth10_ip_master/authorship.json | 2 +- lordgareth10_ip_master/commits.json | 2 +- mukund1403_ip_master/authorship.json | 2 +- mukund1403_ip_master/commits.json | 2 +- raajamani_ip_master/authorship.json | 2 +- raajamani_ip_master/commits.json | 2 +- reposense-logs/reposense.log.0 | 5360 +++++++++++----------- summary.json | 2 +- yuhengr_ip_master/authorship.json | 2 +- yuhengr_ip_master/commits.json | 2 +- 39 files changed, 2717 insertions(+), 2717 deletions(-) diff --git a/HengShuHong_ip_master/authorship.json b/HengShuHong_ip_master/authorship.json index 28948381..94146f57 100644 --- a/HengShuHong_ip_master/authorship.json +++ b/HengShuHong_ip_master/authorship.json @@ -1 +1 @@ -[{"path":"src/main/java/RoleyPoley.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"HengShuHong"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-02"},{"lineNumber":2,"author":{"gitId":"HengShuHong"},"content":"import java.util.List;","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"HengShuHong"},"content":"import java.util.ArrayList;","lastModifiedDate":"2024-02-07"},{"lineNumber":4,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":5,"author":{"gitId":"HengShuHong"},"content":"public class RoleyPoley {","lastModifiedDate":"2024-02-01"},{"lineNumber":6,"author":{"gitId":"HengShuHong"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-02-01"},{"lineNumber":7,"author":{"gitId":"HengShuHong"},"content":" Task[] taskList \u003d new Task[100];","lastModifiedDate":"2024-02-02"},{"lineNumber":8,"author":{"gitId":"HengShuHong"},"content":" greet();","lastModifiedDate":"2024-02-02"},{"lineNumber":9,"author":{"gitId":"HengShuHong"},"content":" echo(taskList);","lastModifiedDate":"2024-02-02"},{"lineNumber":10,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":11,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":12,"author":{"gitId":"HengShuHong"},"content":" public static void displayList(Task[] taskList) {","lastModifiedDate":"2024-02-02"},{"lineNumber":13,"author":{"gitId":"HengShuHong"},"content":" for ( int i \u003d 1; i \u003c taskList.length; i++) {","lastModifiedDate":"2024-02-02"},{"lineNumber":14,"author":{"gitId":"HengShuHong"},"content":" if (taskList[i] \u003d\u003d null) {","lastModifiedDate":"2024-02-02"},{"lineNumber":15,"author":{"gitId":"HengShuHong"},"content":" break;","lastModifiedDate":"2024-02-02"},{"lineNumber":16,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":17,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"\\t\" + i + \".[\" + taskList[i].getStatusIcon() + \"]\" + taskList[i].description);","lastModifiedDate":"2024-02-02"},{"lineNumber":18,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":19,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":20,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":21,"author":{"gitId":"HengShuHong"},"content":" public static void createLine() {","lastModifiedDate":"2024-02-02"},{"lineNumber":22,"author":{"gitId":"HengShuHong"},"content":" for (int i \u003d 0; i \u003c 20; i++) {","lastModifiedDate":"2024-02-02"},{"lineNumber":23,"author":{"gitId":"HengShuHong"},"content":" System.out.print(\u0027-\u0027);","lastModifiedDate":"2024-02-02"},{"lineNumber":24,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":25,"author":{"gitId":"HengShuHong"},"content":" System.out.print(\u0027\\n\u0027);","lastModifiedDate":"2024-02-02"},{"lineNumber":26,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":27,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":28,"author":{"gitId":"HengShuHong"},"content":" public static void greet() {","lastModifiedDate":"2024-02-02"},{"lineNumber":29,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"Hello! I\u0027m RoleyPoley \\nWhat can I do for you today?\");","lastModifiedDate":"2024-02-01"},{"lineNumber":30,"author":{"gitId":"HengShuHong"},"content":" createLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":31,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":32,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":33,"author":{"gitId":"HengShuHong"},"content":" public static void echo(Task[] taskList) {","lastModifiedDate":"2024-02-02"},{"lineNumber":34,"author":{"gitId":"HengShuHong"},"content":" String line;","lastModifiedDate":"2024-02-02"},{"lineNumber":35,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":36,"author":{"gitId":"HengShuHong"},"content":" int counter \u003d 1;","lastModifiedDate":"2024-02-02"},{"lineNumber":37,"author":{"gitId":"HengShuHong"},"content":" while (true) {","lastModifiedDate":"2024-02-02"},{"lineNumber":38,"author":{"gitId":"HengShuHong"},"content":" Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-02"},{"lineNumber":39,"author":{"gitId":"HengShuHong"},"content":" line \u003d in.nextLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":40,"author":{"gitId":"HengShuHong"},"content":" if (line.equals(\"bye\")) {","lastModifiedDate":"2024-02-02"},{"lineNumber":41,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"Bye. Hope to see you again soon!\");","lastModifiedDate":"2024-02-01"},{"lineNumber":42,"author":{"gitId":"HengShuHong"},"content":" createLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":43,"author":{"gitId":"HengShuHong"},"content":" break;","lastModifiedDate":"2024-02-02"},{"lineNumber":44,"author":{"gitId":"HengShuHong"},"content":" } else if (line.equals(\"list\")) {","lastModifiedDate":"2024-02-02"},{"lineNumber":45,"author":{"gitId":"HengShuHong"},"content":" displayList(taskList);","lastModifiedDate":"2024-02-02"},{"lineNumber":46,"author":{"gitId":"HengShuHong"},"content":" createLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":47,"author":{"gitId":"HengShuHong"},"content":" } else if (line.startsWith(\"mark\")) {","lastModifiedDate":"2024-02-02"},{"lineNumber":48,"author":{"gitId":"HengShuHong"},"content":" String[] words \u003d line.split(\" \");","lastModifiedDate":"2024-02-02"},{"lineNumber":49,"author":{"gitId":"HengShuHong"},"content":" if (words.length \u003d\u003d 2) {","lastModifiedDate":"2024-02-02"},{"lineNumber":50,"author":{"gitId":"HengShuHong"},"content":" try {","lastModifiedDate":"2024-02-02"},{"lineNumber":51,"author":{"gitId":"HengShuHong"},"content":" int taskNum \u003d Integer.parseInt(words[1]);","lastModifiedDate":"2024-02-02"},{"lineNumber":52,"author":{"gitId":"HengShuHong"},"content":" if (taskList[taskNum] \u003d\u003d null) {","lastModifiedDate":"2024-02-02"},{"lineNumber":53,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"Error! Out of Bounds!\");","lastModifiedDate":"2024-02-02"},{"lineNumber":54,"author":{"gitId":"HengShuHong"},"content":" } else {","lastModifiedDate":"2024-02-07"},{"lineNumber":55,"author":{"gitId":"HengShuHong"},"content":" taskList[taskNum].markAsDone();","lastModifiedDate":"2024-02-02"},{"lineNumber":56,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":57,"author":{"gitId":"HengShuHong"},"content":" createLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":58,"author":{"gitId":"HengShuHong"},"content":" } catch (NumberFormatException e) {","lastModifiedDate":"2024-02-02"},{"lineNumber":59,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"\\tadded : \" + line);","lastModifiedDate":"2024-02-02"},{"lineNumber":60,"author":{"gitId":"HengShuHong"},"content":" createLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":61,"author":{"gitId":"HengShuHong"},"content":" taskList[counter] \u003d new Task(line);","lastModifiedDate":"2024-02-02"},{"lineNumber":62,"author":{"gitId":"HengShuHong"},"content":" counter++;","lastModifiedDate":"2024-02-02"},{"lineNumber":63,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":64,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":65,"author":{"gitId":"HengShuHong"},"content":" } else if (line.startsWith(\"unmark\")) {","lastModifiedDate":"2024-02-02"},{"lineNumber":66,"author":{"gitId":"HengShuHong"},"content":" String[] words \u003d line.split(\" \");","lastModifiedDate":"2024-02-02"},{"lineNumber":67,"author":{"gitId":"HengShuHong"},"content":" if (words.length \u003d\u003d 2) {","lastModifiedDate":"2024-02-02"},{"lineNumber":68,"author":{"gitId":"HengShuHong"},"content":" try {","lastModifiedDate":"2024-02-02"},{"lineNumber":69,"author":{"gitId":"HengShuHong"},"content":" int taskNum \u003d Integer.parseInt(words[1]);","lastModifiedDate":"2024-02-02"},{"lineNumber":70,"author":{"gitId":"HengShuHong"},"content":" if (taskList[taskNum] \u003d\u003d null) {","lastModifiedDate":"2024-02-02"},{"lineNumber":71,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"Error! Out of Bounds!\");","lastModifiedDate":"2024-02-02"},{"lineNumber":72,"author":{"gitId":"HengShuHong"},"content":" } else {","lastModifiedDate":"2024-02-07"},{"lineNumber":73,"author":{"gitId":"HengShuHong"},"content":" taskList[taskNum].markAsUndone();","lastModifiedDate":"2024-02-02"},{"lineNumber":74,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":75,"author":{"gitId":"HengShuHong"},"content":" createLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":76,"author":{"gitId":"HengShuHong"},"content":" } catch (NumberFormatException e) {","lastModifiedDate":"2024-02-02"},{"lineNumber":77,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"\\tadded : \" + line);","lastModifiedDate":"2024-02-02"},{"lineNumber":78,"author":{"gitId":"HengShuHong"},"content":" createLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":79,"author":{"gitId":"HengShuHong"},"content":" taskList[counter] \u003d new Task(line);","lastModifiedDate":"2024-02-02"},{"lineNumber":80,"author":{"gitId":"HengShuHong"},"content":" counter++;","lastModifiedDate":"2024-02-02"},{"lineNumber":81,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":82,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":83,"author":{"gitId":"HengShuHong"},"content":" } else {","lastModifiedDate":"2024-02-02"},{"lineNumber":84,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"\\tadded : \" + line);","lastModifiedDate":"2024-02-02"},{"lineNumber":85,"author":{"gitId":"HengShuHong"},"content":" createLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":86,"author":{"gitId":"HengShuHong"},"content":" taskList[counter] \u003d new Task(line);","lastModifiedDate":"2024-02-02"},{"lineNumber":87,"author":{"gitId":"HengShuHong"},"content":" counter++;","lastModifiedDate":"2024-02-02"},{"lineNumber":88,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":89,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-01"},{"lineNumber":90,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-01"},{"lineNumber":91,"author":{"gitId":"HengShuHong"},"content":"}","lastModifiedDate":"2024-02-02"},{"lineNumber":92,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"}],"authorContributionMap":{"HengShuHong":92}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":2,"author":{"gitId":"HengShuHong"},"content":"public class Task {","lastModifiedDate":"2024-02-02"},{"lineNumber":3,"author":{"gitId":"HengShuHong"},"content":" protected String description;","lastModifiedDate":"2024-02-02"},{"lineNumber":4,"author":{"gitId":"HengShuHong"},"content":" protected boolean isDone;","lastModifiedDate":"2024-02-02"},{"lineNumber":5,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":6,"author":{"gitId":"HengShuHong"},"content":" public Task(String description) {","lastModifiedDate":"2024-02-02"},{"lineNumber":7,"author":{"gitId":"HengShuHong"},"content":" this.description \u003d description;","lastModifiedDate":"2024-02-02"},{"lineNumber":8,"author":{"gitId":"HengShuHong"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-02"},{"lineNumber":9,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":10,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":11,"author":{"gitId":"HengShuHong"},"content":" public String getStatusIcon() {","lastModifiedDate":"2024-02-02"},{"lineNumber":12,"author":{"gitId":"HengShuHong"},"content":" return (isDone ? \"X\" : \" \");","lastModifiedDate":"2024-02-02"},{"lineNumber":13,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":14,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":15,"author":{"gitId":"HengShuHong"},"content":" public void markAsDone() {","lastModifiedDate":"2024-02-02"},{"lineNumber":16,"author":{"gitId":"HengShuHong"},"content":" this.isDone \u003d true;","lastModifiedDate":"2024-02-02"},{"lineNumber":17,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"Nice! I\u0027ve marked this task as done:\");","lastModifiedDate":"2024-02-02"},{"lineNumber":18,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"\\t [\" + this.getStatusIcon() + \"] \" + this.description);","lastModifiedDate":"2024-02-02"},{"lineNumber":19,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":20,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":21,"author":{"gitId":"HengShuHong"},"content":" public void markAsUndone() {","lastModifiedDate":"2024-02-02"},{"lineNumber":22,"author":{"gitId":"HengShuHong"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-02"},{"lineNumber":23,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"OK, I\u0027ve marked this task as not done yet:\");","lastModifiedDate":"2024-02-02"},{"lineNumber":24,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"\\t [\" + this.getStatusIcon() + \"] \" + this.description);","lastModifiedDate":"2024-02-02"},{"lineNumber":25,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":26,"author":{"gitId":"HengShuHong"},"content":"}","lastModifiedDate":"2024-02-02"}],"authorContributionMap":{"HengShuHong":26}}] +[{"path":"src/main/java/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"HengShuHong"},"content":"public class Deadline extends Task{","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"HengShuHong"},"content":" protected String by;","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":4,"author":{"gitId":"HengShuHong"},"content":" public Deadline(String description, String by) {","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"HengShuHong"},"content":" super(description);","lastModifiedDate":"2024-02-07"},{"lineNumber":6,"author":{"gitId":"HengShuHong"},"content":" this.by \u003d by;","lastModifiedDate":"2024-02-07"},{"lineNumber":7,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":8,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":9,"author":{"gitId":"HengShuHong"},"content":" @Override","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"HengShuHong"},"content":" public String getDescription() {","lastModifiedDate":"2024-02-07"},{"lineNumber":11,"author":{"gitId":"HengShuHong"},"content":" return super.getDescription() + \"(by:\" + by + \")\";","lastModifiedDate":"2024-02-07"},{"lineNumber":12,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":13,"author":{"gitId":"HengShuHong"},"content":" @Override","lastModifiedDate":"2024-02-07"},{"lineNumber":14,"author":{"gitId":"HengShuHong"},"content":" public String getTaskTypeIcon() {","lastModifiedDate":"2024-02-07"},{"lineNumber":15,"author":{"gitId":"HengShuHong"},"content":" return \"D\";","lastModifiedDate":"2024-02-07"},{"lineNumber":16,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":17,"author":{"gitId":"HengShuHong"},"content":"}","lastModifiedDate":"2024-02-07"}],"authorContributionMap":{"HengShuHong":17}},{"path":"src/main/java/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"HengShuHong"},"content":"public class Event extends Task{","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"HengShuHong"},"content":" protected String from;","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"HengShuHong"},"content":" protected String to;","lastModifiedDate":"2024-02-07"},{"lineNumber":4,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"HengShuHong"},"content":" public Event(String description, String from, String to) {","lastModifiedDate":"2024-02-07"},{"lineNumber":6,"author":{"gitId":"HengShuHong"},"content":" super(description);","lastModifiedDate":"2024-02-07"},{"lineNumber":7,"author":{"gitId":"HengShuHong"},"content":" this.from \u003d from;","lastModifiedDate":"2024-02-07"},{"lineNumber":8,"author":{"gitId":"HengShuHong"},"content":" this.to \u003d to;","lastModifiedDate":"2024-02-07"},{"lineNumber":9,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":11,"author":{"gitId":"HengShuHong"},"content":" @Override","lastModifiedDate":"2024-02-07"},{"lineNumber":12,"author":{"gitId":"HengShuHong"},"content":" public String getDescription() {","lastModifiedDate":"2024-02-07"},{"lineNumber":13,"author":{"gitId":"HengShuHong"},"content":" return super.getDescription() + \"(from:\" + from + \" to:\" + to + \")\";","lastModifiedDate":"2024-02-07"},{"lineNumber":14,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":15,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":16,"author":{"gitId":"HengShuHong"},"content":" @Override","lastModifiedDate":"2024-02-07"},{"lineNumber":17,"author":{"gitId":"HengShuHong"},"content":" public String getTaskTypeIcon() {","lastModifiedDate":"2024-02-07"},{"lineNumber":18,"author":{"gitId":"HengShuHong"},"content":" return \"E\";","lastModifiedDate":"2024-02-07"},{"lineNumber":19,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":20,"author":{"gitId":"HengShuHong"},"content":"}","lastModifiedDate":"2024-02-07"}],"authorContributionMap":{"HengShuHong":20}},{"path":"src/main/java/RoleyPoley.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"HengShuHong"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-02"},{"lineNumber":2,"author":{"gitId":"HengShuHong"},"content":"import java.util.List;","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"HengShuHong"},"content":"import java.util.ArrayList;","lastModifiedDate":"2024-02-07"},{"lineNumber":4,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":5,"author":{"gitId":"HengShuHong"},"content":"public class RoleyPoley {","lastModifiedDate":"2024-02-01"},{"lineNumber":6,"author":{"gitId":"HengShuHong"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-02-01"},{"lineNumber":7,"author":{"gitId":"HengShuHong"},"content":" Task[] taskList \u003d new Task[100];","lastModifiedDate":"2024-02-02"},{"lineNumber":8,"author":{"gitId":"HengShuHong"},"content":" greet();","lastModifiedDate":"2024-02-02"},{"lineNumber":9,"author":{"gitId":"HengShuHong"},"content":" echo(taskList);","lastModifiedDate":"2024-02-02"},{"lineNumber":10,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":11,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":12,"author":{"gitId":"HengShuHong"},"content":" private static void printReply(Task[] taskList, int counter) {","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"\\t Got it. I\u0027ve added this task:\");","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"\\t [\" + taskList[counter].getTaskTypeIcon() + \"][ ]\" + taskList[counter].getDescription());","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"\\t Now you have \" + counter + \" tasks in the list.\");","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"HengShuHong"},"content":" public static void displayList(Task[] taskList) {","lastModifiedDate":"2024-02-02"},{"lineNumber":19,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"\\tHere are the tasks in your list:\");","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"HengShuHong"},"content":" for (int i \u003d 1; i \u003c taskList.length; i++) {","lastModifiedDate":"2024-02-02"},{"lineNumber":21,"author":{"gitId":"HengShuHong"},"content":" if (taskList[i] \u003d\u003d null) {","lastModifiedDate":"2024-02-02"},{"lineNumber":22,"author":{"gitId":"HengShuHong"},"content":" break;","lastModifiedDate":"2024-02-02"},{"lineNumber":23,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":24,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"\\t\" + i + \".[\" + taskList[i].getTaskTypeIcon() + \"][\" + taskList[i].getStatusIcon() + \"]\" + taskList[i].getDescription());","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":26,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":27,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":28,"author":{"gitId":"HengShuHong"},"content":" public static void createLine() {","lastModifiedDate":"2024-02-02"},{"lineNumber":29,"author":{"gitId":"HengShuHong"},"content":" for (int i \u003d 0; i \u003c 20; i++) {","lastModifiedDate":"2024-02-02"},{"lineNumber":30,"author":{"gitId":"HengShuHong"},"content":" System.out.print(\u0027-\u0027);","lastModifiedDate":"2024-02-02"},{"lineNumber":31,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":32,"author":{"gitId":"HengShuHong"},"content":" System.out.print(\u0027\\n\u0027);","lastModifiedDate":"2024-02-02"},{"lineNumber":33,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":34,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":35,"author":{"gitId":"HengShuHong"},"content":" public static void greet() {","lastModifiedDate":"2024-02-02"},{"lineNumber":36,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"Hello! I\u0027m RoleyPoley \\nWhat can I do for you today?\");","lastModifiedDate":"2024-02-01"},{"lineNumber":37,"author":{"gitId":"HengShuHong"},"content":" createLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":38,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":39,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":40,"author":{"gitId":"HengShuHong"},"content":" public static void echo(Task[] taskList) {","lastModifiedDate":"2024-02-02"},{"lineNumber":41,"author":{"gitId":"HengShuHong"},"content":" String line;","lastModifiedDate":"2024-02-02"},{"lineNumber":42,"author":{"gitId":"HengShuHong"},"content":" int counter \u003d 1;","lastModifiedDate":"2024-02-02"},{"lineNumber":43,"author":{"gitId":"HengShuHong"},"content":" while (true) {","lastModifiedDate":"2024-02-02"},{"lineNumber":44,"author":{"gitId":"HengShuHong"},"content":" Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-02"},{"lineNumber":45,"author":{"gitId":"HengShuHong"},"content":" line \u003d in.nextLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":46,"author":{"gitId":"HengShuHong"},"content":" String[] splitString \u003d line.split(\" \");","lastModifiedDate":"2024-02-09"},{"lineNumber":47,"author":{"gitId":"HengShuHong"},"content":" if (splitString[0].equals(\"bye\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":48,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"Bye. Hope to see you again soon!\");","lastModifiedDate":"2024-02-01"},{"lineNumber":49,"author":{"gitId":"HengShuHong"},"content":" createLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":50,"author":{"gitId":"HengShuHong"},"content":" break;","lastModifiedDate":"2024-02-02"},{"lineNumber":51,"author":{"gitId":"HengShuHong"},"content":" } else if (line.equals(\"list\")) {","lastModifiedDate":"2024-02-02"},{"lineNumber":52,"author":{"gitId":"HengShuHong"},"content":" displayList(taskList);","lastModifiedDate":"2024-02-02"},{"lineNumber":53,"author":{"gitId":"HengShuHong"},"content":" createLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":54,"author":{"gitId":"HengShuHong"},"content":" } else if (splitString[0].equals(\"mark\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"HengShuHong"},"content":" String[] words \u003d line.split(\" \");","lastModifiedDate":"2024-02-02"},{"lineNumber":56,"author":{"gitId":"HengShuHong"},"content":" if (words.length \u003d\u003d 2) {","lastModifiedDate":"2024-02-02"},{"lineNumber":57,"author":{"gitId":"HengShuHong"},"content":" int taskNum \u003d Integer.parseInt(words[1]);","lastModifiedDate":"2024-02-02"},{"lineNumber":58,"author":{"gitId":"HengShuHong"},"content":" if (taskList[taskNum] \u003d\u003d null) {","lastModifiedDate":"2024-02-02"},{"lineNumber":59,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"Error! Task \" + taskNum + \" cannot be found. Enter command list to view task list.\");","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"HengShuHong"},"content":" } else {","lastModifiedDate":"2024-02-07"},{"lineNumber":61,"author":{"gitId":"HengShuHong"},"content":" taskList[taskNum].markAsDone();","lastModifiedDate":"2024-02-02"},{"lineNumber":62,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":63,"author":{"gitId":"HengShuHong"},"content":" createLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":64,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":65,"author":{"gitId":"HengShuHong"},"content":" } else if (splitString[0].equals(\"unmark\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":66,"author":{"gitId":"HengShuHong"},"content":" String[] words \u003d line.split(\" \");","lastModifiedDate":"2024-02-02"},{"lineNumber":67,"author":{"gitId":"HengShuHong"},"content":" if (words.length \u003d\u003d 2) {","lastModifiedDate":"2024-02-02"},{"lineNumber":68,"author":{"gitId":"HengShuHong"},"content":" int taskNum \u003d Integer.parseInt(words[1]);","lastModifiedDate":"2024-02-02"},{"lineNumber":69,"author":{"gitId":"HengShuHong"},"content":" if (taskList[taskNum] \u003d\u003d null) {","lastModifiedDate":"2024-02-02"},{"lineNumber":70,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"Error! Task \" + taskNum + \" cannot be found. Enter command list to view task list.\");","lastModifiedDate":"2024-02-09"},{"lineNumber":71,"author":{"gitId":"HengShuHong"},"content":" } else {","lastModifiedDate":"2024-02-07"},{"lineNumber":72,"author":{"gitId":"HengShuHong"},"content":" taskList[taskNum].markAsUndone();","lastModifiedDate":"2024-02-02"},{"lineNumber":73,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":74,"author":{"gitId":"HengShuHong"},"content":" createLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":75,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":76,"author":{"gitId":"HengShuHong"},"content":" } else if (splitString[0].equals(\"todo\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":77,"author":{"gitId":"HengShuHong"},"content":" String description \u003d line.substring(\"todo\".length());","lastModifiedDate":"2024-02-09"},{"lineNumber":78,"author":{"gitId":"HengShuHong"},"content":" taskList[counter] \u003d new Todo(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":79,"author":{"gitId":"HengShuHong"},"content":" printReply(taskList, counter);","lastModifiedDate":"2024-02-09"},{"lineNumber":80,"author":{"gitId":"HengShuHong"},"content":" createLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":81,"author":{"gitId":"HengShuHong"},"content":" counter++;","lastModifiedDate":"2024-02-09"},{"lineNumber":82,"author":{"gitId":"HengShuHong"},"content":" } else if (splitString[0].equals(\"deadline\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":83,"author":{"gitId":"HengShuHong"},"content":" String[] words \u003d line.split(\"/by\");","lastModifiedDate":"2024-02-09"},{"lineNumber":84,"author":{"gitId":"HengShuHong"},"content":" if (words.length \u003d\u003d 1) {","lastModifiedDate":"2024-02-09"},{"lineNumber":85,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"Invalid entry. Please enter input in the following format:\");","lastModifiedDate":"2024-02-09"},{"lineNumber":86,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"deadline \u003cTask Description\u003e /by \u003cDue Date\u003e\");","lastModifiedDate":"2024-02-09"},{"lineNumber":87,"author":{"gitId":"HengShuHong"},"content":" } else {","lastModifiedDate":"2024-02-09"},{"lineNumber":88,"author":{"gitId":"HengShuHong"},"content":" String description \u003d words[0].substring(\"deadline\".length());","lastModifiedDate":"2024-02-09"},{"lineNumber":89,"author":{"gitId":"HengShuHong"},"content":" String dueDate \u003d words[1];","lastModifiedDate":"2024-02-09"},{"lineNumber":90,"author":{"gitId":"HengShuHong"},"content":" taskList[counter] \u003d new Deadline(description, dueDate);","lastModifiedDate":"2024-02-09"},{"lineNumber":91,"author":{"gitId":"HengShuHong"},"content":" printReply(taskList, counter);","lastModifiedDate":"2024-02-09"},{"lineNumber":92,"author":{"gitId":"HengShuHong"},"content":" createLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":93,"author":{"gitId":"HengShuHong"},"content":" counter++;","lastModifiedDate":"2024-02-09"},{"lineNumber":94,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":95,"author":{"gitId":"HengShuHong"},"content":" } else if (splitString[0].equals(\"event\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":96,"author":{"gitId":"HengShuHong"},"content":" String[] words \u003d line.split(\"/from\");","lastModifiedDate":"2024-02-09"},{"lineNumber":97,"author":{"gitId":"HengShuHong"},"content":" if (words.length \u003d\u003d 1) {","lastModifiedDate":"2024-02-09"},{"lineNumber":98,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"Invalid entry. Please enter input in the following format:\");","lastModifiedDate":"2024-02-09"},{"lineNumber":99,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"event \u003cTask Description\u003e /from \u003cStart Time\u003e /to \u003cEnd Time\");","lastModifiedDate":"2024-02-09"},{"lineNumber":100,"author":{"gitId":"HengShuHong"},"content":" } else {","lastModifiedDate":"2024-02-09"},{"lineNumber":101,"author":{"gitId":"HengShuHong"},"content":" String description \u003d words[0].substring(\"event\".length());","lastModifiedDate":"2024-02-09"},{"lineNumber":102,"author":{"gitId":"HengShuHong"},"content":" int indexOfEndTime \u003d words[1].indexOf(\"/to\");","lastModifiedDate":"2024-02-09"},{"lineNumber":103,"author":{"gitId":"HengShuHong"},"content":" if (indexOfEndTime \u003d\u003d -1) {","lastModifiedDate":"2024-02-09"},{"lineNumber":104,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"Invalid entry. Please enter input in the following format:\");","lastModifiedDate":"2024-02-09"},{"lineNumber":105,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"event \u003cTask Description\u003e /from \u003cStart Time\u003e /to \u003cEnd Time\");","lastModifiedDate":"2024-02-09"},{"lineNumber":106,"author":{"gitId":"HengShuHong"},"content":" } else {","lastModifiedDate":"2024-02-09"},{"lineNumber":107,"author":{"gitId":"HengShuHong"},"content":" String startTime \u003d words[1].substring(0, indexOfEndTime - 1);","lastModifiedDate":"2024-02-09"},{"lineNumber":108,"author":{"gitId":"HengShuHong"},"content":" String endTime \u003d words[1].substring(indexOfEndTime + \"/to\".length());","lastModifiedDate":"2024-02-09"},{"lineNumber":109,"author":{"gitId":"HengShuHong"},"content":" taskList[counter] \u003d new Event(description, startTime, endTime);","lastModifiedDate":"2024-02-09"},{"lineNumber":110,"author":{"gitId":"HengShuHong"},"content":" printReply(taskList, counter);","lastModifiedDate":"2024-02-09"},{"lineNumber":111,"author":{"gitId":"HengShuHong"},"content":" createLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":112,"author":{"gitId":"HengShuHong"},"content":" counter++;","lastModifiedDate":"2024-02-02"},{"lineNumber":113,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":114,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":115,"author":{"gitId":"HengShuHong"},"content":" } else {","lastModifiedDate":"2024-02-02"},{"lineNumber":116,"author":{"gitId":"HengShuHong"},"content":" taskList[counter] \u003d new Todo(\" \" + line);","lastModifiedDate":"2024-02-09"},{"lineNumber":117,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"Task type not defined. Task is automatically assigned to todo task type.\");","lastModifiedDate":"2024-02-09"},{"lineNumber":118,"author":{"gitId":"HengShuHong"},"content":" printReply(taskList, counter);","lastModifiedDate":"2024-02-09"},{"lineNumber":119,"author":{"gitId":"HengShuHong"},"content":" createLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":120,"author":{"gitId":"HengShuHong"},"content":" counter++;","lastModifiedDate":"2024-02-02"},{"lineNumber":121,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":122,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-01"},{"lineNumber":123,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-01"},{"lineNumber":124,"author":{"gitId":"HengShuHong"},"content":"}","lastModifiedDate":"2024-02-02"},{"lineNumber":125,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":126,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":127,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"HengShuHong":127}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":2,"author":{"gitId":"HengShuHong"},"content":"public class Task {","lastModifiedDate":"2024-02-02"},{"lineNumber":3,"author":{"gitId":"HengShuHong"},"content":" protected String description;","lastModifiedDate":"2024-02-02"},{"lineNumber":4,"author":{"gitId":"HengShuHong"},"content":" protected boolean isDone;","lastModifiedDate":"2024-02-02"},{"lineNumber":5,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":6,"author":{"gitId":"HengShuHong"},"content":" public Task(String description) {","lastModifiedDate":"2024-02-02"},{"lineNumber":7,"author":{"gitId":"HengShuHong"},"content":" this.description \u003d description;","lastModifiedDate":"2024-02-02"},{"lineNumber":8,"author":{"gitId":"HengShuHong"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-02"},{"lineNumber":9,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":10,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":11,"author":{"gitId":"HengShuHong"},"content":" public String getStatusIcon() {","lastModifiedDate":"2024-02-02"},{"lineNumber":12,"author":{"gitId":"HengShuHong"},"content":" return (isDone ? \"X\" : \" \");","lastModifiedDate":"2024-02-02"},{"lineNumber":13,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":14,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":15,"author":{"gitId":"HengShuHong"},"content":" public void markAsDone() {","lastModifiedDate":"2024-02-02"},{"lineNumber":16,"author":{"gitId":"HengShuHong"},"content":" this.isDone \u003d true;","lastModifiedDate":"2024-02-02"},{"lineNumber":17,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"Nice! I\u0027ve marked this task as done:\");","lastModifiedDate":"2024-02-02"},{"lineNumber":18,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"\\t [\" + this.getStatusIcon() + \"] \" + this.description);","lastModifiedDate":"2024-02-02"},{"lineNumber":19,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":20,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":21,"author":{"gitId":"HengShuHong"},"content":" public void markAsUndone() {","lastModifiedDate":"2024-02-02"},{"lineNumber":22,"author":{"gitId":"HengShuHong"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-02"},{"lineNumber":23,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"OK, I\u0027ve marked this task as not done yet:\");","lastModifiedDate":"2024-02-02"},{"lineNumber":24,"author":{"gitId":"HengShuHong"},"content":" System.out.println(\"\\t [\" + this.getStatusIcon() + \"] \" + this.description);","lastModifiedDate":"2024-02-02"},{"lineNumber":25,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":26,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"HengShuHong"},"content":" public String getDescription() {","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"HengShuHong"},"content":" return description;","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"HengShuHong"},"content":" public String getTaskTypeIcon() { //default is a todo task","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"HengShuHong"},"content":" return \"T\";","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"HengShuHong"},"content":"}","lastModifiedDate":"2024-02-02"}],"authorContributionMap":{"HengShuHong":34}},{"path":"src/main/java/Todo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"HengShuHong"},"content":"public class Todo extends Task {","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"HengShuHong"},"content":" public Todo(String description) {","lastModifiedDate":"2024-02-07"},{"lineNumber":4,"author":{"gitId":"HengShuHong"},"content":" super(description);","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":6,"author":{"gitId":"HengShuHong"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":7,"author":{"gitId":"HengShuHong"},"content":" @Override","lastModifiedDate":"2024-02-07"},{"lineNumber":8,"author":{"gitId":"HengShuHong"},"content":" public String getDescription() {","lastModifiedDate":"2024-02-07"},{"lineNumber":9,"author":{"gitId":"HengShuHong"},"content":" return super.getDescription() ;","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"HengShuHong"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":11,"author":{"gitId":"HengShuHong"},"content":"}","lastModifiedDate":"2024-02-07"}],"authorContributionMap":{"HengShuHong":11}}] diff --git a/HengShuHong_ip_master/commits.json b/HengShuHong_ip_master/commits.json index b0a8c8d7..894715ef 100644 --- a/HengShuHong_ip_master/commits.json +++ b/HengShuHong_ip_master/commits.json @@ -1 +1 @@ -{"authorDailyContributionsMap":{"HengShuHong":[{"date":"2024-02-01","commitResults":[{"hash":"df4c70b67c140be60df521c51e8dba0865cdc5a4","isMergeCommit":false,"messageTitle":"Add RoleyPoley.java and Implement Level 0","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":6,"deletions":0}}}]},{"date":"2024-02-02","commitResults":[{"hash":"5daf65adfa4704fbe1b3aae5278e3d853896d947","isMergeCommit":false,"messageTitle":"Update RoleyPoley.java : Implement Level 1, createLine(), echo() and greet() functions","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":31,"deletions":1}}},{"hash":"dfe1fc5333bc32e886cfc0e468cbb69013f308fa","isMergeCommit":false,"messageTitle":"Update \u0027echo\u0027 function: Implement Level 2, Add and List tasks","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":14,"deletions":3}}},{"hash":"c4dd10ce426d49f2f72548983e7b5b5d02ab5c69","isMergeCommit":false,"messageTitle":"Add Task.java as a new class","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":2,"deletions":0}}},{"hash":"6471a59f152306ebee90c97c4361f6fbfcea63ce","isMergeCommit":false,"messageTitle":"Update RoleyPoley.java and Task.java, Implement Level 3","messageBody":"","tags":["Level-3","Level-2","Level-1","Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":89,"deletions":15}}}]},{"date":"2024-02-07","commitResults":[{"hash":"375babecfbc3ffcc6d8f192d2bf64768c13cf390","isMergeCommit":false,"messageTitle":"Updated RoleyPoley.java and Task.java to follow A Coding Standard","messageBody":"","tags":["A-CodingStandard"],"fileTypesAndContributionMap":{"java":{"insertions":4,"deletions":9}}}]}]},"authorFileTypeContributionMap":{"HengShuHong":{"java":118,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"HengShuHong":1135.8099},"authorDisplayNameMap":{"HengShuHong":"CS2113-T15-4 HENG..HONG"}} +{"authorDailyContributionsMap":{"HengShuHong":[{"date":"2024-02-01","commitResults":[{"hash":"df4c70b67c140be60df521c51e8dba0865cdc5a4","isMergeCommit":false,"messageTitle":"Add RoleyPoley.java and Implement Level 0","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":6,"deletions":0}}}]},{"date":"2024-02-02","commitResults":[{"hash":"5daf65adfa4704fbe1b3aae5278e3d853896d947","isMergeCommit":false,"messageTitle":"Update RoleyPoley.java : Implement Level 1, createLine(), echo() and greet() functions","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":31,"deletions":1}}},{"hash":"dfe1fc5333bc32e886cfc0e468cbb69013f308fa","isMergeCommit":false,"messageTitle":"Update \u0027echo\u0027 function: Implement Level 2, Add and List tasks","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":14,"deletions":3}}},{"hash":"c4dd10ce426d49f2f72548983e7b5b5d02ab5c69","isMergeCommit":false,"messageTitle":"Add Task.java as a new class","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":2,"deletions":0}}},{"hash":"6471a59f152306ebee90c97c4361f6fbfcea63ce","isMergeCommit":false,"messageTitle":"Update RoleyPoley.java and Task.java, Implement Level 3","messageBody":"","tags":["Level-3","Level-2","Level-1","Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":89,"deletions":15}}}]},{"date":"2024-02-07","commitResults":[{"hash":"375babecfbc3ffcc6d8f192d2bf64768c13cf390","isMergeCommit":false,"messageTitle":"Updated RoleyPoley.java and Task.java to follow A Coding Standard","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":4,"deletions":9}}}]},{"date":"2024-02-09","commitResults":[{"hash":"b5b24e10d0479b64195d9a3ce01cf737c186c436","isMergeCommit":false,"messageTitle":"Update RoleyPoley.java and Task.java to follow A Coding Standard","messageBody":"","tags":["A-CodingStandard"],"fileTypesAndContributionMap":{"java":{"insertions":48,"deletions":0}}},{"hash":"6e736cb58aa0159e2017c543176b11dbc3d8ceeb","isMergeCommit":false,"messageTitle":"Update Task.java with getDescription() and getTaskTypeIcon() methods","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":8,"deletions":0}}},{"hash":"db873197cb4cf7f746aad31096a7494d52b0dd41","isMergeCommit":false,"messageTitle":"Update method to support the tracking of three types of tasks, Implement Level 4","messageBody":"","tags":["Level-4"],"fileTypesAndContributionMap":{"java":{"insertions":67,"deletions":32}}}]}]},"authorFileTypeContributionMap":{"HengShuHong":{"java":209,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"HengShuHong":1969.7708},"authorDisplayNameMap":{"HengShuHong":"CS2113-T15-4 HENG..HONG"}} diff --git a/Kishen271828_ip_master/authorship.json b/Kishen271828_ip_master/authorship.json index 60db7d44..4230b358 100644 --- a/Kishen271828_ip_master/authorship.json +++ b/Kishen271828_ip_master/authorship.json @@ -1 +1 @@ -[{"path":"src/main/java/Nehsik.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"Kishen271828"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-01"},{"lineNumber":2,"author":{"gitId":"Kishen271828"},"content":"public class Nehsik {","lastModifiedDate":"2024-01-26"},{"lineNumber":3,"author":{"gitId":"-"},"content":" public static void main(String[] args) {","lastModifiedDate":"2019-07-29"},{"lineNumber":4,"author":{"gitId":"Kishen271828"},"content":" displayGreetings();","lastModifiedDate":"2024-02-02"},{"lineNumber":5,"author":{"gitId":"Kishen271828"},"content":" String command;","lastModifiedDate":"2024-02-01"},{"lineNumber":6,"author":{"gitId":"Kishen271828"},"content":" Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-01"},{"lineNumber":7,"author":{"gitId":"Kishen271828"},"content":" Task[] taskList \u003d new Task[100];","lastModifiedDate":"2024-02-02"},{"lineNumber":8,"author":{"gitId":"Kishen271828"},"content":" int taskIndex \u003d 0;","lastModifiedDate":"2024-02-02"},{"lineNumber":9,"author":{"gitId":"Kishen271828"},"content":" while (true) {","lastModifiedDate":"2024-02-01"},{"lineNumber":10,"author":{"gitId":"Kishen271828"},"content":" command \u003d in.nextLine();","lastModifiedDate":"2024-02-01"},{"lineNumber":11,"author":{"gitId":"Kishen271828"},"content":" if (command.equals(\"list\")) {","lastModifiedDate":"2024-02-02"},{"lineNumber":12,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-01"},{"lineNumber":13,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"Here are the tasks in your list:\");","lastModifiedDate":"2024-02-02"},{"lineNumber":14,"author":{"gitId":"Kishen271828"},"content":" for (int i \u003d 0; i \u003c taskIndex; i++) {","lastModifiedDate":"2024-02-02"},{"lineNumber":15,"author":{"gitId":"Kishen271828"},"content":" System.out.println((i + 1) + \".[\" + taskList[i].getStatusIcon() + \"] \" + taskList[i].getDescription());","lastModifiedDate":"2024-02-02"},{"lineNumber":16,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-01"},{"lineNumber":17,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-01"},{"lineNumber":18,"author":{"gitId":"Kishen271828"},"content":" } else if (command.equals(\"bye\")) {","lastModifiedDate":"2024-02-02"},{"lineNumber":19,"author":{"gitId":"Kishen271828"},"content":" break;","lastModifiedDate":"2024-02-02"},{"lineNumber":20,"author":{"gitId":"Kishen271828"},"content":" } else if (command.startsWith(\"mark\")){","lastModifiedDate":"2024-02-02"},{"lineNumber":21,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":22,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"Nice! I\u0027ve marked this task as done:\");","lastModifiedDate":"2024-02-02"},{"lineNumber":23,"author":{"gitId":"Kishen271828"},"content":" int taskNum \u003d Integer.parseInt(command.substring(5)) - 1;","lastModifiedDate":"2024-02-02"},{"lineNumber":24,"author":{"gitId":"Kishen271828"},"content":" taskList[taskNum].markAsDone();","lastModifiedDate":"2024-02-02"},{"lineNumber":25,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"[X] \" + taskList[taskNum].getDescription());","lastModifiedDate":"2024-02-02"},{"lineNumber":26,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":27,"author":{"gitId":"Kishen271828"},"content":" } else if (command.startsWith(\"unmark\")) {","lastModifiedDate":"2024-02-02"},{"lineNumber":28,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":29,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"OK, I\u0027ve marked this task as not done yet:\");","lastModifiedDate":"2024-02-02"},{"lineNumber":30,"author":{"gitId":"Kishen271828"},"content":" int taskNum \u003d Integer.parseInt(command.substring(7)) - 1;","lastModifiedDate":"2024-02-02"},{"lineNumber":31,"author":{"gitId":"Kishen271828"},"content":" taskList[taskNum].markAsUndone();","lastModifiedDate":"2024-02-02"},{"lineNumber":32,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"[ ] \" + taskList[taskNum].getDescription());","lastModifiedDate":"2024-02-02"},{"lineNumber":33,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":34,"author":{"gitId":"Kishen271828"},"content":" } else {","lastModifiedDate":"2024-02-02"},{"lineNumber":35,"author":{"gitId":"Kishen271828"},"content":" taskList[taskIndex] \u003d new Task(command);","lastModifiedDate":"2024-02-02"},{"lineNumber":36,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-01-26"},{"lineNumber":37,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"added: \" + command);","lastModifiedDate":"2024-02-02"},{"lineNumber":38,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":39,"author":{"gitId":"Kishen271828"},"content":" taskIndex++;","lastModifiedDate":"2024-02-02"},{"lineNumber":40,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":41,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":42,"author":{"gitId":"Kishen271828"},"content":" displayExitMessage();","lastModifiedDate":"2024-02-02"},{"lineNumber":43,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-01-26"},{"lineNumber":44,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-01-26"},{"lineNumber":45,"author":{"gitId":"Kishen271828"},"content":" public static void printLine() {","lastModifiedDate":"2024-01-26"},{"lineNumber":46,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-01-26"},{"lineNumber":47,"author":{"gitId":"-"},"content":" }","lastModifiedDate":"2019-07-29"},{"lineNumber":48,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":49,"author":{"gitId":"Kishen271828"},"content":" public static void displayGreetings() {","lastModifiedDate":"2024-02-02"},{"lineNumber":50,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":51,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"Hello! I\u0027m Nehsik\");","lastModifiedDate":"2024-02-02"},{"lineNumber":52,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"What can I do for you?\");","lastModifiedDate":"2024-02-02"},{"lineNumber":53,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":54,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":55,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":56,"author":{"gitId":"Kishen271828"},"content":" public static void displayExitMessage() {","lastModifiedDate":"2024-02-02"},{"lineNumber":57,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":58,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"Bye. Hope to see you again soon!\");","lastModifiedDate":"2024-02-02"},{"lineNumber":59,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":60,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":61,"author":{"gitId":"-"},"content":"}","lastModifiedDate":"2019-07-29"}],"authorContributionMap":{"Kishen271828":58,"-":3}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"Kishen271828"},"content":"public class Task {","lastModifiedDate":"2024-02-02"},{"lineNumber":2,"author":{"gitId":"Kishen271828"},"content":" protected String description;","lastModifiedDate":"2024-02-02"},{"lineNumber":3,"author":{"gitId":"Kishen271828"},"content":" protected boolean isDone;","lastModifiedDate":"2024-02-02"},{"lineNumber":4,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":5,"author":{"gitId":"Kishen271828"},"content":" public Task(String description) {","lastModifiedDate":"2024-02-02"},{"lineNumber":6,"author":{"gitId":"Kishen271828"},"content":" this.description \u003d description;","lastModifiedDate":"2024-02-02"},{"lineNumber":7,"author":{"gitId":"Kishen271828"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-02"},{"lineNumber":8,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":9,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":10,"author":{"gitId":"Kishen271828"},"content":" public String getStatusIcon() {","lastModifiedDate":"2024-02-02"},{"lineNumber":11,"author":{"gitId":"Kishen271828"},"content":" return (isDone ? \"X\" : \" \"); // mark done task with X","lastModifiedDate":"2024-02-02"},{"lineNumber":12,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":13,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":14,"author":{"gitId":"Kishen271828"},"content":" public String getDescription() {","lastModifiedDate":"2024-02-02"},{"lineNumber":15,"author":{"gitId":"Kishen271828"},"content":" return description;","lastModifiedDate":"2024-02-02"},{"lineNumber":16,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":17,"author":{"gitId":"Kishen271828"},"content":" public void markAsDone() {","lastModifiedDate":"2024-02-02"},{"lineNumber":18,"author":{"gitId":"Kishen271828"},"content":" isDone \u003d true;","lastModifiedDate":"2024-02-02"},{"lineNumber":19,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":20,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":21,"author":{"gitId":"Kishen271828"},"content":" public void markAsUndone() {","lastModifiedDate":"2024-02-02"},{"lineNumber":22,"author":{"gitId":"Kishen271828"},"content":" isDone \u003d false;","lastModifiedDate":"2024-02-02"},{"lineNumber":23,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":24,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":25,"author":{"gitId":"Kishen271828"},"content":"}","lastModifiedDate":"2024-02-02"},{"lineNumber":26,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-02"}],"authorContributionMap":{"Kishen271828":26}},{"path":"text-ui-test/runtest.bat","fileType":"bat","lines":[{"lineNumber":1,"author":{"gitId":"-"},"content":"@ECHO OFF","lastModifiedDate":"2020-05-25"},{"lineNumber":2,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":3,"author":{"gitId":"-"},"content":"REM create bin directory if it doesn\u0027t exist","lastModifiedDate":"2020-05-25"},{"lineNumber":4,"author":{"gitId":"-"},"content":"if not exist ..\\bin mkdir ..\\bin","lastModifiedDate":"2020-05-25"},{"lineNumber":5,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":6,"author":{"gitId":"-"},"content":"REM delete output from previous run","lastModifiedDate":"2020-05-25"},{"lineNumber":7,"author":{"gitId":"-"},"content":"if exist ACTUAL.TXT del ACTUAL.TXT","lastModifiedDate":"2020-08-25"},{"lineNumber":8,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":9,"author":{"gitId":"-"},"content":"REM compile the code into the bin folder","lastModifiedDate":"2020-05-25"},{"lineNumber":10,"author":{"gitId":"-"},"content":"javac -cp ..\\src\\main\\java -Xlint:none -d ..\\bin ..\\src\\main\\java\\*.java","lastModifiedDate":"2020-08-25"},{"lineNumber":11,"author":{"gitId":"-"},"content":"IF ERRORLEVEL 1 (","lastModifiedDate":"2020-05-25"},{"lineNumber":12,"author":{"gitId":"-"},"content":" echo ********** BUILD FAILURE **********","lastModifiedDate":"2020-05-25"},{"lineNumber":13,"author":{"gitId":"-"},"content":" exit /b 1","lastModifiedDate":"2020-05-25"},{"lineNumber":14,"author":{"gitId":"-"},"content":")","lastModifiedDate":"2020-05-25"},{"lineNumber":15,"author":{"gitId":"-"},"content":"REM no error here, errorlevel \u003d\u003d 0","lastModifiedDate":"2020-05-25"},{"lineNumber":16,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":17,"author":{"gitId":"-"},"content":"REM run the program, feed commands from input.txt file and redirect the output to the ACTUAL.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":18,"author":{"gitId":"Kishen271828"},"content":"java -classpath ..\\bin Nehsik \u003c input.txt \u003e ACTUAL.TXT","lastModifiedDate":"2024-01-26"},{"lineNumber":19,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":20,"author":{"gitId":"-"},"content":"REM compare the output to the expected output","lastModifiedDate":"2020-05-25"},{"lineNumber":21,"author":{"gitId":"-"},"content":"FC ACTUAL.TXT EXPECTED.TXT","lastModifiedDate":"2020-05-25"}],"authorContributionMap":{"Kishen271828":1,"-":20}}] +[{"path":"src/main/java/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"Kishen271828"},"content":"public class Deadline extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"Kishen271828"},"content":" protected String by;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"Kishen271828"},"content":" public Deadline(String description, String by) {","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"Kishen271828"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"Kishen271828"},"content":" this.by \u003d by;","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"Kishen271828"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"Kishen271828"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"Kishen271828"},"content":" return \"[D]\" + super.toString() + \" (by: \" + by + \")\";","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"Kishen271828"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"Kishen271828":14}},{"path":"src/main/java/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"Kishen271828"},"content":"public class Event extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"Kishen271828"},"content":" protected String from;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"Kishen271828"},"content":" protected String to;","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"Kishen271828"},"content":" public Event(String description, String from, String to) {","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"Kishen271828"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"Kishen271828"},"content":" this.from \u003d from;","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"Kishen271828"},"content":" this.to \u003d to;","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"Kishen271828"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"Kishen271828"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"Kishen271828"},"content":" return \"[E]\" + super.toString() + \" (from: \" + from + \" to: \" + to + \")\";","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"Kishen271828"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"Kishen271828":16}},{"path":"src/main/java/Nehsik.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"Kishen271828"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-01"},{"lineNumber":2,"author":{"gitId":"Kishen271828"},"content":"public class Nehsik {","lastModifiedDate":"2024-01-26"},{"lineNumber":3,"author":{"gitId":"Kishen271828"},"content":" public static final int MAX_TASKS \u003d 100;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"-"},"content":" public static void main(String[] args) {","lastModifiedDate":"2019-07-29"},{"lineNumber":6,"author":{"gitId":"Kishen271828"},"content":" displayGreetings();","lastModifiedDate":"2024-02-02"},{"lineNumber":7,"author":{"gitId":"Kishen271828"},"content":" ","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"Kishen271828"},"content":" Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-01"},{"lineNumber":9,"author":{"gitId":"Kishen271828"},"content":" Task[] taskList \u003d new Task[MAX_TASKS];","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"Kishen271828"},"content":" int taskIndex \u003d 0;","lastModifiedDate":"2024-02-02"},{"lineNumber":11,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"Kishen271828"},"content":" while (true) {","lastModifiedDate":"2024-02-01"},{"lineNumber":13,"author":{"gitId":"Kishen271828"},"content":" String command \u003d in.nextLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"Kishen271828"},"content":" if (command.equals(\"list\")) {","lastModifiedDate":"2024-02-02"},{"lineNumber":15,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-01"},{"lineNumber":16,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"Here are the tasks in your list:\");","lastModifiedDate":"2024-02-02"},{"lineNumber":17,"author":{"gitId":"Kishen271828"},"content":" for (int i \u003d 0; i \u003c taskIndex; i++) {","lastModifiedDate":"2024-02-02"},{"lineNumber":18,"author":{"gitId":"Kishen271828"},"content":" System.out.println((i + 1) + \".\" + taskList[i].toString());","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-01"},{"lineNumber":20,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-01"},{"lineNumber":21,"author":{"gitId":"Kishen271828"},"content":" } else if (command.startsWith(\"mark\")){","lastModifiedDate":"2024-02-02"},{"lineNumber":22,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":23,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"Nice! I\u0027ve marked this task as done:\");","lastModifiedDate":"2024-02-02"},{"lineNumber":24,"author":{"gitId":"Kishen271828"},"content":" int taskNum \u003d Integer.parseInt(command.substring(5)) - 1;","lastModifiedDate":"2024-02-02"},{"lineNumber":25,"author":{"gitId":"Kishen271828"},"content":" taskList[taskNum].markAsDone();","lastModifiedDate":"2024-02-02"},{"lineNumber":26,"author":{"gitId":"Kishen271828"},"content":" System.out.println(taskList[taskNum].toString());","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":28,"author":{"gitId":"Kishen271828"},"content":" } else if (command.startsWith(\"unmark\")) {","lastModifiedDate":"2024-02-02"},{"lineNumber":29,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":30,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"OK, I\u0027ve marked this task as not done yet:\");","lastModifiedDate":"2024-02-02"},{"lineNumber":31,"author":{"gitId":"Kishen271828"},"content":" int taskNum \u003d Integer.parseInt(command.substring(7)) - 1;","lastModifiedDate":"2024-02-02"},{"lineNumber":32,"author":{"gitId":"Kishen271828"},"content":" taskList[taskNum].markAsUndone();","lastModifiedDate":"2024-02-02"},{"lineNumber":33,"author":{"gitId":"Kishen271828"},"content":" System.out.println(taskList[taskNum].toString());","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":35,"author":{"gitId":"Kishen271828"},"content":" } else if (command.startsWith(\"todo\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"Kishen271828"},"content":" String taskDescription \u003d command.substring(5);","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"Kishen271828"},"content":" taskList[taskIndex] \u003d new Todo(taskDescription);","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":39,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":40,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"Got it. I\u0027ve added this task:\");","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\" \" + taskList[taskIndex].toString());","lastModifiedDate":"2024-02-09"},{"lineNumber":42,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"Now you have \" + (taskIndex + 1) + \" tasks in the list\");","lastModifiedDate":"2024-02-09"},{"lineNumber":43,"author":{"gitId":"Kishen271828"},"content":" taskIndex++;","lastModifiedDate":"2024-02-02"},{"lineNumber":44,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":45,"author":{"gitId":"Kishen271828"},"content":" } else if (command.startsWith(\"deadline\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":46,"author":{"gitId":"Kishen271828"},"content":" String taskDescription \u003d command.substring(command.indexOf(\"deadline \") + 9, command.indexOf(\"/by \") - 1);","lastModifiedDate":"2024-02-09"},{"lineNumber":47,"author":{"gitId":"Kishen271828"},"content":" String by \u003d command.substring(command.indexOf(\"/by \") + 4);","lastModifiedDate":"2024-02-09"},{"lineNumber":48,"author":{"gitId":"Kishen271828"},"content":" taskList[taskIndex] \u003d new Deadline(taskDescription, by);","lastModifiedDate":"2024-02-09"},{"lineNumber":49,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":50,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":51,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"Got it. I\u0027ve added this task:\");","lastModifiedDate":"2024-02-09"},{"lineNumber":52,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\" \" + taskList[taskIndex].toString());","lastModifiedDate":"2024-02-09"},{"lineNumber":53,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"Now you have \" + (taskIndex + 1) + \" tasks in the list\");","lastModifiedDate":"2024-02-09"},{"lineNumber":54,"author":{"gitId":"Kishen271828"},"content":" taskIndex++;","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"Kishen271828"},"content":" } else if (command.startsWith(\"event\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":57,"author":{"gitId":"Kishen271828"},"content":" String taskDescription \u003d command.substring(command.indexOf(\"event \") + 6, command.indexOf(\"/from \") - 1);","lastModifiedDate":"2024-02-09"},{"lineNumber":58,"author":{"gitId":"Kishen271828"},"content":" String from \u003d command.substring(command.indexOf(\"/from \") + 6, command.indexOf(\"/to \") - 1);","lastModifiedDate":"2024-02-09"},{"lineNumber":59,"author":{"gitId":"Kishen271828"},"content":" String to \u003d command.substring(command.indexOf(\"/to \") + 4);","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"Kishen271828"},"content":" taskList[taskIndex] \u003d new Event(taskDescription, from, to);","lastModifiedDate":"2024-02-09"},{"lineNumber":61,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":62,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":63,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"Got it. I\u0027ve added this task:\");","lastModifiedDate":"2024-02-09"},{"lineNumber":64,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\" \" + taskList[taskIndex].toString());","lastModifiedDate":"2024-02-09"},{"lineNumber":65,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"Now you have \" + (taskIndex + 1) + \" tasks in the list\");","lastModifiedDate":"2024-02-09"},{"lineNumber":66,"author":{"gitId":"Kishen271828"},"content":" taskIndex++;","lastModifiedDate":"2024-02-09"},{"lineNumber":67,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":68,"author":{"gitId":"Kishen271828"},"content":" } else if (command.equals(\"bye\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":69,"author":{"gitId":"Kishen271828"},"content":" displayExitMessage();","lastModifiedDate":"2024-02-09"},{"lineNumber":70,"author":{"gitId":"Kishen271828"},"content":" break;","lastModifiedDate":"2024-02-09"},{"lineNumber":71,"author":{"gitId":"Kishen271828"},"content":" } else {","lastModifiedDate":"2024-02-09"},{"lineNumber":72,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"Invalid Command\");","lastModifiedDate":"2024-02-09"},{"lineNumber":73,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":74,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":75,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-01-26"},{"lineNumber":76,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-01-26"},{"lineNumber":77,"author":{"gitId":"Kishen271828"},"content":" public static void printLine() {","lastModifiedDate":"2024-01-26"},{"lineNumber":78,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-01-26"},{"lineNumber":79,"author":{"gitId":"-"},"content":" }","lastModifiedDate":"2019-07-29"},{"lineNumber":80,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":81,"author":{"gitId":"Kishen271828"},"content":" public static void displayGreetings() {","lastModifiedDate":"2024-02-02"},{"lineNumber":82,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":83,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"Hello! I\u0027m Nehsik\");","lastModifiedDate":"2024-02-02"},{"lineNumber":84,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"What can I do for you?\");","lastModifiedDate":"2024-02-02"},{"lineNumber":85,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":86,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":87,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":88,"author":{"gitId":"Kishen271828"},"content":" public static void displayExitMessage() {","lastModifiedDate":"2024-02-02"},{"lineNumber":89,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":90,"author":{"gitId":"Kishen271828"},"content":" System.out.println(\"Bye. Hope to see you again soon!\");","lastModifiedDate":"2024-02-02"},{"lineNumber":91,"author":{"gitId":"Kishen271828"},"content":" printLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":92,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":93,"author":{"gitId":"-"},"content":"}","lastModifiedDate":"2019-07-29"}],"authorContributionMap":{"Kishen271828":90,"-":3}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"Kishen271828"},"content":"public class Task {","lastModifiedDate":"2024-02-02"},{"lineNumber":2,"author":{"gitId":"Kishen271828"},"content":" protected String description;","lastModifiedDate":"2024-02-02"},{"lineNumber":3,"author":{"gitId":"Kishen271828"},"content":" protected boolean isDone;","lastModifiedDate":"2024-02-02"},{"lineNumber":4,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":5,"author":{"gitId":"Kishen271828"},"content":" public Task(String description) {","lastModifiedDate":"2024-02-02"},{"lineNumber":6,"author":{"gitId":"Kishen271828"},"content":" this.description \u003d description;","lastModifiedDate":"2024-02-02"},{"lineNumber":7,"author":{"gitId":"Kishen271828"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-02"},{"lineNumber":8,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":9,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":10,"author":{"gitId":"Kishen271828"},"content":" public String getStatusIcon() {","lastModifiedDate":"2024-02-02"},{"lineNumber":11,"author":{"gitId":"Kishen271828"},"content":" return (isDone ? \"X\" : \" \"); // mark done task with X","lastModifiedDate":"2024-02-02"},{"lineNumber":12,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":13,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":14,"author":{"gitId":"Kishen271828"},"content":" public String getDescription() {","lastModifiedDate":"2024-02-02"},{"lineNumber":15,"author":{"gitId":"Kishen271828"},"content":" return description;","lastModifiedDate":"2024-02-02"},{"lineNumber":16,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":17,"author":{"gitId":"Kishen271828"},"content":" public void markAsDone() {","lastModifiedDate":"2024-02-02"},{"lineNumber":18,"author":{"gitId":"Kishen271828"},"content":" isDone \u003d true;","lastModifiedDate":"2024-02-02"},{"lineNumber":19,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":20,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":21,"author":{"gitId":"Kishen271828"},"content":" public void markAsUndone() {","lastModifiedDate":"2024-02-02"},{"lineNumber":22,"author":{"gitId":"Kishen271828"},"content":" isDone \u003d false;","lastModifiedDate":"2024-02-02"},{"lineNumber":23,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":24,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":25,"author":{"gitId":"Kishen271828"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"Kishen271828"},"content":" return \"[\" + getStatusIcon() + \"] \" + description;","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"Kishen271828"},"content":"}","lastModifiedDate":"2024-02-02"},{"lineNumber":29,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-02"}],"authorContributionMap":{"Kishen271828":29}},{"path":"src/main/java/Todo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"Kishen271828"},"content":"public class Todo extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"Kishen271828"},"content":" public Todo(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"Kishen271828"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"Kishen271828"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"Kishen271828"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"Kishen271828"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"Kishen271828"},"content":" return \"[T]\" + super.toString();","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"Kishen271828"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"Kishen271828"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"Kishen271828":11}},{"path":"text-ui-test/runtest.bat","fileType":"bat","lines":[{"lineNumber":1,"author":{"gitId":"-"},"content":"@ECHO OFF","lastModifiedDate":"2020-05-25"},{"lineNumber":2,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":3,"author":{"gitId":"-"},"content":"REM create bin directory if it doesn\u0027t exist","lastModifiedDate":"2020-05-25"},{"lineNumber":4,"author":{"gitId":"-"},"content":"if not exist ..\\bin mkdir ..\\bin","lastModifiedDate":"2020-05-25"},{"lineNumber":5,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":6,"author":{"gitId":"-"},"content":"REM delete output from previous run","lastModifiedDate":"2020-05-25"},{"lineNumber":7,"author":{"gitId":"-"},"content":"if exist ACTUAL.TXT del ACTUAL.TXT","lastModifiedDate":"2020-08-25"},{"lineNumber":8,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":9,"author":{"gitId":"-"},"content":"REM compile the code into the bin folder","lastModifiedDate":"2020-05-25"},{"lineNumber":10,"author":{"gitId":"-"},"content":"javac -cp ..\\src\\main\\java -Xlint:none -d ..\\bin ..\\src\\main\\java\\*.java","lastModifiedDate":"2020-08-25"},{"lineNumber":11,"author":{"gitId":"-"},"content":"IF ERRORLEVEL 1 (","lastModifiedDate":"2020-05-25"},{"lineNumber":12,"author":{"gitId":"-"},"content":" echo ********** BUILD FAILURE **********","lastModifiedDate":"2020-05-25"},{"lineNumber":13,"author":{"gitId":"-"},"content":" exit /b 1","lastModifiedDate":"2020-05-25"},{"lineNumber":14,"author":{"gitId":"-"},"content":")","lastModifiedDate":"2020-05-25"},{"lineNumber":15,"author":{"gitId":"-"},"content":"REM no error here, errorlevel \u003d\u003d 0","lastModifiedDate":"2020-05-25"},{"lineNumber":16,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":17,"author":{"gitId":"-"},"content":"REM run the program, feed commands from input.txt file and redirect the output to the ACTUAL.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":18,"author":{"gitId":"Kishen271828"},"content":"java -classpath ..\\bin Nehsik \u003c input.txt \u003e ACTUAL.TXT","lastModifiedDate":"2024-01-26"},{"lineNumber":19,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":20,"author":{"gitId":"-"},"content":"REM compare the output to the expected output","lastModifiedDate":"2020-05-25"},{"lineNumber":21,"author":{"gitId":"-"},"content":"FC ACTUAL.TXT EXPECTED.TXT","lastModifiedDate":"2020-05-25"}],"authorContributionMap":{"Kishen271828":1,"-":20}}] diff --git a/Kishen271828_ip_master/commits.json b/Kishen271828_ip_master/commits.json index 8740b375..10459f47 100644 --- a/Kishen271828_ip_master/commits.json +++ b/Kishen271828_ip_master/commits.json @@ -1 +1 @@ -{"authorDailyContributionsMap":{"Kishen271828":[{"date":"2024-01-26","commitResults":[{"hash":"cebfec20974061e0afce82e6eb4aade481946c89","isMergeCommit":false,"messageTitle":"Rename chatbot Duke to Nehsik","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1},"bat":{"insertions":1,"deletions":1}}},{"hash":"1080d7e40748d60f86bdfe1cf637f2a7a4dfb7c9","isMergeCommit":false,"messageTitle":"Level 0: Add Greet \u0026 Exit message","messageBody":"","tags":["Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":10,"deletions":1}}}]},{"date":"2024-02-01","commitResults":[{"hash":"04fc8aae8e572496231c2f7ffb428d89049a1871","isMergeCommit":false,"messageTitle":"Level 1: Add Echo feature","messageBody":"","tags":["Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":13,"deletions":0}}}]},{"date":"2024-02-02","commitResults":[{"hash":"443d3a746fe25207c69324560de61d44d906c86b","isMergeCommit":false,"messageTitle":"Add list functionality","messageBody":"","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":30,"deletions":16}}},{"hash":"31a7fe16317d67c34d1cb5cb802651723c557e0d","isMergeCommit":false,"messageTitle":"Add mark/unmark task feature","messageBody":"","tags":["Level-3"],"fileTypesAndContributionMap":{"java":{"insertions":48,"deletions":7}}}]}]},"authorFileTypeContributionMap":{"Kishen271828":{"java":84,"md":0,"fxml":0,"sh":0,"bat":1,"gradle":0,"txt":0}},"authorContributionVariance":{"Kishen271828":632.37335},"authorDisplayNameMap":{"Kishen271828":"CS2113-F14-4 GAND..SHEN"}} +{"authorDailyContributionsMap":{"Kishen271828":[{"date":"2024-01-26","commitResults":[{"hash":"cebfec20974061e0afce82e6eb4aade481946c89","isMergeCommit":false,"messageTitle":"Rename chatbot Duke to Nehsik","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1},"bat":{"insertions":1,"deletions":1}}},{"hash":"1080d7e40748d60f86bdfe1cf637f2a7a4dfb7c9","isMergeCommit":false,"messageTitle":"Level 0: Add Greet \u0026 Exit message","messageBody":"","tags":["Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":10,"deletions":1}}}]},{"date":"2024-02-01","commitResults":[{"hash":"04fc8aae8e572496231c2f7ffb428d89049a1871","isMergeCommit":false,"messageTitle":"Level 1: Add Echo feature","messageBody":"","tags":["Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":13,"deletions":0}}}]},{"date":"2024-02-02","commitResults":[{"hash":"443d3a746fe25207c69324560de61d44d906c86b","isMergeCommit":false,"messageTitle":"Add list functionality","messageBody":"","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":30,"deletions":16}}},{"hash":"31a7fe16317d67c34d1cb5cb802651723c557e0d","isMergeCommit":false,"messageTitle":"Add mark/unmark task feature","messageBody":"","tags":["Level-3"],"fileTypesAndContributionMap":{"java":{"insertions":48,"deletions":7}}}]},{"date":"2024-02-09","commitResults":[{"hash":"3720fe5d5350a0ab33a23a8c4b72dbc2942469a4","isMergeCommit":false,"messageTitle":"Modify code to follow Coding Standard","messageBody":"","tags":["A-CodingStandard"],"fileTypesAndContributionMap":{"java":{"insertions":7,"deletions":3}}},{"hash":"71bb584d1988b6ab93a8273c25752f153d85522d","isMergeCommit":false,"messageTitle":"Add Todo task types","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":20,"deletions":7}}},{"hash":"2dabcd042f3bb7fdc7d48ad707705f8c8aa0bea7","isMergeCommit":false,"messageTitle":"Add Deadline task types","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":28,"deletions":0}}},{"hash":"576d1cebc40fd3c5d72aef66305d404a195c6fc2","isMergeCommit":false,"messageTitle":"Add Event task types","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":28,"deletions":0}}},{"hash":"86802e6aab4d530ffd66a00cd77f97676f39e2c5","isMergeCommit":false,"messageTitle":"Update Task Class","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":3,"deletions":0}}},{"hash":"7b02167f131163e382c6f28b65400fb10c27186e","isMergeCommit":false,"messageTitle":"Minor bug fix in order to exit only for bye command","messageBody":"","tags":["Level-4"],"fileTypesAndContributionMap":{"java":{"insertions":6,"deletions":6}}}]}]},"authorFileTypeContributionMap":{"Kishen271828":{"java":160,"md":0,"fxml":0,"sh":0,"bat":1,"gradle":0,"txt":0}},"authorContributionVariance":{"Kishen271828":895.72107},"authorDisplayNameMap":{"Kishen271828":"CS2113-F14-4 GAND..SHEN"}} diff --git a/LowTL_ip_master/authorship.json b/LowTL_ip_master/authorship.json index 413bdd95..3e115879 100644 --- a/LowTL_ip_master/authorship.json +++ b/LowTL_ip_master/authorship.json @@ -1 +1 @@ -[{"path":"src/main/java/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"LowTL"},"content":"public class Deadline extends Task{","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"LowTL"},"content":" protected String by;","lastModifiedDate":"2024-02-08"},{"lineNumber":3,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"LowTL"},"content":" public Deadline(String desc, String by) {","lastModifiedDate":"2024-02-08"},{"lineNumber":5,"author":{"gitId":"LowTL"},"content":" super(desc);","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"LowTL"},"content":" this.by \u003d by;","lastModifiedDate":"2024-02-08"},{"lineNumber":7,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":8,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":9,"author":{"gitId":"LowTL"},"content":" public String getBy() {","lastModifiedDate":"2024-02-08"},{"lineNumber":10,"author":{"gitId":"LowTL"},"content":" return this.by;","lastModifiedDate":"2024-02-08"},{"lineNumber":11,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":12,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":13,"author":{"gitId":"LowTL"},"content":" public void setBy(String newBy) {","lastModifiedDate":"2024-02-08"},{"lineNumber":14,"author":{"gitId":"LowTL"},"content":" this.by \u003d newBy;","lastModifiedDate":"2024-02-08"},{"lineNumber":15,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":16,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":17,"author":{"gitId":"LowTL"},"content":" @Override","lastModifiedDate":"2024-02-08"},{"lineNumber":18,"author":{"gitId":"LowTL"},"content":" public String toString() {","lastModifiedDate":"2024-02-08"},{"lineNumber":19,"author":{"gitId":"LowTL"},"content":" return \"[D] \" + super.toString();","lastModifiedDate":"2024-02-08"},{"lineNumber":20,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":21,"author":{"gitId":"LowTL"},"content":"}","lastModifiedDate":"2024-02-08"}],"authorContributionMap":{"LowTL":21}},{"path":"src/main/java/Katleen.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"LowTL"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-01-29"},{"lineNumber":2,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":3,"author":{"gitId":"LowTL"},"content":"public class Katleen {","lastModifiedDate":"2024-01-25"},{"lineNumber":4,"author":{"gitId":"LowTL"},"content":" public static final String LINE \u003d \"____________________________________________________________\";","lastModifiedDate":"2024-02-02"},{"lineNumber":5,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-01-25"},{"lineNumber":6,"author":{"gitId":"LowTL"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-01-25"},{"lineNumber":7,"author":{"gitId":"LowTL"},"content":" System.out.println(LINE);","lastModifiedDate":"2024-02-02"},{"lineNumber":8,"author":{"gitId":"LowTL"},"content":" System.out.println(\"Hello! I\u0027m Katleen.\");","lastModifiedDate":"2024-01-25"},{"lineNumber":9,"author":{"gitId":"LowTL"},"content":" System.out.println(\"What can I do for you?\");","lastModifiedDate":"2024-01-29"},{"lineNumber":10,"author":{"gitId":"LowTL"},"content":" System.out.println(LINE);","lastModifiedDate":"2024-02-02"},{"lineNumber":11,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-01-29"},{"lineNumber":12,"author":{"gitId":"LowTL"},"content":" Task[] tasks \u003d new Task[100];","lastModifiedDate":"2024-01-29"},{"lineNumber":13,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":14,"author":{"gitId":"LowTL"},"content":" Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-01-29"},{"lineNumber":15,"author":{"gitId":"LowTL"},"content":" String text \u003d in.nextLine();","lastModifiedDate":"2024-01-29"},{"lineNumber":16,"author":{"gitId":"LowTL"},"content":" while (!text.equals(\"bye\")) {","lastModifiedDate":"2024-01-29"},{"lineNumber":17,"author":{"gitId":"LowTL"},"content":" String[] textSplit \u003d text.split(\" \");","lastModifiedDate":"2024-02-07"},{"lineNumber":18,"author":{"gitId":"LowTL"},"content":" String cmdWord \u003d textSplit[0];","lastModifiedDate":"2024-02-07"},{"lineNumber":19,"author":{"gitId":"LowTL"},"content":" System.out.println(\"Cmdword is: \" + cmdWord);","lastModifiedDate":"2024-02-08"},{"lineNumber":20,"author":{"gitId":"LowTL"},"content":" System.out.println(LINE);","lastModifiedDate":"2024-02-02"},{"lineNumber":21,"author":{"gitId":"LowTL"},"content":" if (cmdWord.equals(\"mark\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":22,"author":{"gitId":"LowTL"},"content":" String index \u003d textSplit[1];","lastModifiedDate":"2024-02-07"},{"lineNumber":23,"author":{"gitId":"LowTL"},"content":" int i \u003d Integer.parseInt(index) - 1;","lastModifiedDate":"2024-02-02"},{"lineNumber":24,"author":{"gitId":"LowTL"},"content":" tasks[i].setDone(true);","lastModifiedDate":"2024-02-07"},{"lineNumber":25,"author":{"gitId":"LowTL"},"content":" System.out.println(\"Well done! This task is marked as done:\");","lastModifiedDate":"2024-01-30"},{"lineNumber":26,"author":{"gitId":"LowTL"},"content":" tasks[i].printTask();","lastModifiedDate":"2024-02-07"},{"lineNumber":27,"author":{"gitId":"LowTL"},"content":" } else if (cmdWord.equals(\"unmark\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":28,"author":{"gitId":"LowTL"},"content":" String index \u003d textSplit[1];","lastModifiedDate":"2024-02-07"},{"lineNumber":29,"author":{"gitId":"LowTL"},"content":" int i \u003d Integer.parseInt(index) - 1;","lastModifiedDate":"2024-02-07"},{"lineNumber":30,"author":{"gitId":"LowTL"},"content":" tasks[i].setDone(false);","lastModifiedDate":"2024-02-07"},{"lineNumber":31,"author":{"gitId":"LowTL"},"content":" System.out.println(\"This task is marked as undone:\");","lastModifiedDate":"2024-01-30"},{"lineNumber":32,"author":{"gitId":"LowTL"},"content":" tasks[i].printTask();","lastModifiedDate":"2024-01-30"},{"lineNumber":33,"author":{"gitId":"LowTL"},"content":" } else if (cmdWord.equals(\"list\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":34,"author":{"gitId":"LowTL"},"content":" System.out.println(\"Here are the tasks in your list:\");","lastModifiedDate":"2024-01-30"},{"lineNumber":35,"author":{"gitId":"LowTL"},"content":" for (int i \u003d 0; i \u003c Task.getTaskCount(); i++) {","lastModifiedDate":"2024-02-07"},{"lineNumber":36,"author":{"gitId":"LowTL"},"content":" System.out.print((i+1) + \". \");","lastModifiedDate":"2024-02-07"},{"lineNumber":37,"author":{"gitId":"LowTL"},"content":" tasks[i].printTask();","lastModifiedDate":"2024-01-30"},{"lineNumber":38,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-01-29"},{"lineNumber":39,"author":{"gitId":"LowTL"},"content":" } else if (cmdWord.equals(\"todo\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":40,"author":{"gitId":"LowTL"},"content":" System.out.println(\"Added: \");","lastModifiedDate":"2024-02-07"},{"lineNumber":41,"author":{"gitId":"LowTL"},"content":" int i \u003d Task.getTaskCount();","lastModifiedDate":"2024-02-07"},{"lineNumber":42,"author":{"gitId":"LowTL"},"content":" ToDo task \u003d new ToDo(text.replace(\"todo \", \"\").trim());","lastModifiedDate":"2024-02-08"},{"lineNumber":43,"author":{"gitId":"LowTL"},"content":" tasks[i] \u003d task;","lastModifiedDate":"2024-02-07"},{"lineNumber":44,"author":{"gitId":"LowTL"},"content":" tasks[i].printTask();","lastModifiedDate":"2024-02-07"},{"lineNumber":45,"author":{"gitId":"LowTL"},"content":" } else if (cmdWord.equals(\"deadline\")) {","lastModifiedDate":"2024-02-08"},{"lineNumber":46,"author":{"gitId":"LowTL"},"content":" System.out.println(\"Added: \");","lastModifiedDate":"2024-02-08"},{"lineNumber":47,"author":{"gitId":"LowTL"},"content":" int i \u003d Task.getTaskCount();","lastModifiedDate":"2024-02-08"},{"lineNumber":48,"author":{"gitId":"LowTL"},"content":" int by \u003d text.indexOf(\"/by\");","lastModifiedDate":"2024-02-08"},{"lineNumber":49,"author":{"gitId":"LowTL"},"content":" Deadline task \u003d new Deadline(text.substring(text.indexOf(cmdWord), by), text.substring(by).trim());","lastModifiedDate":"2024-02-08"},{"lineNumber":50,"author":{"gitId":"LowTL"},"content":" tasks[i] \u003d task;","lastModifiedDate":"2024-02-08"},{"lineNumber":51,"author":{"gitId":"LowTL"},"content":" tasks[i].printTask();","lastModifiedDate":"2024-02-08"},{"lineNumber":52,"author":{"gitId":"LowTL"},"content":" } else if (cmdWord.equals(\"event\")) {","lastModifiedDate":"2024-02-08"},{"lineNumber":53,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":54,"author":{"gitId":"LowTL"},"content":" } else {","lastModifiedDate":"2024-01-30"},{"lineNumber":55,"author":{"gitId":"LowTL"},"content":" System.out.println(\"Invalid command, please try again\");","lastModifiedDate":"2024-02-07"},{"lineNumber":56,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-01-29"},{"lineNumber":57,"author":{"gitId":"LowTL"},"content":" System.out.println(LINE);","lastModifiedDate":"2024-02-02"},{"lineNumber":58,"author":{"gitId":"LowTL"},"content":" text \u003d in.nextLine().trim();","lastModifiedDate":"2024-02-08"},{"lineNumber":59,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-01-29"},{"lineNumber":60,"author":{"gitId":"LowTL"},"content":" System.out.println(LINE);","lastModifiedDate":"2024-02-02"},{"lineNumber":61,"author":{"gitId":"LowTL"},"content":" System.out.println(\"Bye, have a nice day!\");","lastModifiedDate":"2024-02-02"},{"lineNumber":62,"author":{"gitId":"LowTL"},"content":" System.out.println(LINE);","lastModifiedDate":"2024-02-02"},{"lineNumber":63,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-01-25"},{"lineNumber":64,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":65,"author":{"gitId":"LowTL"},"content":"}","lastModifiedDate":"2024-01-25"}],"authorContributionMap":{"LowTL":65}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"LowTL"},"content":"public class Task {","lastModifiedDate":"2024-01-29"},{"lineNumber":2,"author":{"gitId":"LowTL"},"content":" protected String description;","lastModifiedDate":"2024-01-29"},{"lineNumber":3,"author":{"gitId":"LowTL"},"content":" protected boolean isDone;","lastModifiedDate":"2024-01-29"},{"lineNumber":4,"author":{"gitId":"LowTL"},"content":" private static int taskCount \u003d 0;","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-01-29"},{"lineNumber":6,"author":{"gitId":"LowTL"},"content":" public Task(String desc) {","lastModifiedDate":"2024-01-29"},{"lineNumber":7,"author":{"gitId":"LowTL"},"content":" this.description \u003d desc;","lastModifiedDate":"2024-01-29"},{"lineNumber":8,"author":{"gitId":"LowTL"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-01-29"},{"lineNumber":9,"author":{"gitId":"LowTL"},"content":" taskCount++;","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-01-29"},{"lineNumber":11,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":12,"author":{"gitId":"LowTL"},"content":" public void setDone(boolean done) {","lastModifiedDate":"2024-02-07"},{"lineNumber":13,"author":{"gitId":"LowTL"},"content":" this.isDone \u003d done;","lastModifiedDate":"2024-02-07"},{"lineNumber":14,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":15,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":16,"author":{"gitId":"LowTL"},"content":" public void printTask() {","lastModifiedDate":"2024-01-30"},{"lineNumber":17,"author":{"gitId":"LowTL"},"content":" System.out.println(this);","lastModifiedDate":"2024-02-08"},{"lineNumber":18,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":19,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":20,"author":{"gitId":"LowTL"},"content":" public String printDone() {","lastModifiedDate":"2024-01-30"},{"lineNumber":21,"author":{"gitId":"LowTL"},"content":" return (this.isDone ? \"X\" : \" \");","lastModifiedDate":"2024-01-30"},{"lineNumber":22,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":23,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":24,"author":{"gitId":"LowTL"},"content":" public static int getTaskCount() {","lastModifiedDate":"2024-02-07"},{"lineNumber":25,"author":{"gitId":"LowTL"},"content":" return taskCount;","lastModifiedDate":"2024-02-07"},{"lineNumber":26,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":27,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":28,"author":{"gitId":"LowTL"},"content":" @Override","lastModifiedDate":"2024-02-08"},{"lineNumber":29,"author":{"gitId":"LowTL"},"content":" public String toString() {","lastModifiedDate":"2024-02-08"},{"lineNumber":30,"author":{"gitId":"LowTL"},"content":" return \"[\" + this.printDone() + \"] \" + this.description;","lastModifiedDate":"2024-02-08"},{"lineNumber":31,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":32,"author":{"gitId":"LowTL"},"content":"}","lastModifiedDate":"2024-01-29"}],"authorContributionMap":{"LowTL":32}},{"path":"src/main/java/ToDo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"LowTL"},"content":"public class ToDo extends Task {","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"LowTL"},"content":" public ToDo(String desc) {","lastModifiedDate":"2024-02-07"},{"lineNumber":4,"author":{"gitId":"LowTL"},"content":" super(desc);","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":6,"author":{"gitId":"LowTL"},"content":" @Override","lastModifiedDate":"2024-02-07"},{"lineNumber":7,"author":{"gitId":"LowTL"},"content":" public String toString() {","lastModifiedDate":"2024-02-07"},{"lineNumber":8,"author":{"gitId":"LowTL"},"content":" return \"[T]\" + super.toString();","lastModifiedDate":"2024-02-07"},{"lineNumber":9,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"LowTL"},"content":"}","lastModifiedDate":"2024-02-07"}],"authorContributionMap":{"LowTL":10}}] +[{"path":"src/main/java/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"LowTL"},"content":"public class Deadline extends Task{","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"LowTL"},"content":" protected String by;","lastModifiedDate":"2024-02-08"},{"lineNumber":3,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"LowTL"},"content":" public Deadline(String desc, String by) {","lastModifiedDate":"2024-02-08"},{"lineNumber":5,"author":{"gitId":"LowTL"},"content":" super(desc);","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"LowTL"},"content":" this.by \u003d by;","lastModifiedDate":"2024-02-08"},{"lineNumber":7,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":8,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":9,"author":{"gitId":"LowTL"},"content":" public String getBy() {","lastModifiedDate":"2024-02-08"},{"lineNumber":10,"author":{"gitId":"LowTL"},"content":" return this.by;","lastModifiedDate":"2024-02-08"},{"lineNumber":11,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":12,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":13,"author":{"gitId":"LowTL"},"content":" public void setBy(String newBy) {","lastModifiedDate":"2024-02-08"},{"lineNumber":14,"author":{"gitId":"LowTL"},"content":" this.by \u003d newBy;","lastModifiedDate":"2024-02-08"},{"lineNumber":15,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":16,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":17,"author":{"gitId":"LowTL"},"content":" @Override","lastModifiedDate":"2024-02-08"},{"lineNumber":18,"author":{"gitId":"LowTL"},"content":" public String toString() {","lastModifiedDate":"2024-02-08"},{"lineNumber":19,"author":{"gitId":"LowTL"},"content":" return \"[D]\" + super.toString() + \" by \" + this.by;","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":21,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"LowTL"},"content":"}","lastModifiedDate":"2024-02-08"}],"authorContributionMap":{"LowTL":22}},{"path":"src/main/java/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"LowTL"},"content":"public class Event extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"LowTL"},"content":" protected String from;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"LowTL"},"content":" protected String to;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"LowTL"},"content":" public Event(String desc, String from, String to) {","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"LowTL"},"content":" super(desc);","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"LowTL"},"content":" this.from \u003d from;","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"LowTL"},"content":" this.to \u003d to;","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"LowTL"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"LowTL"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"LowTL"},"content":" return (\"[E]\" + super.toString() + \" from \" + this.from + \" to \" + this.to);","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"LowTL"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"LowTL":14}},{"path":"src/main/java/Katleen.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"LowTL"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-01-29"},{"lineNumber":2,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":3,"author":{"gitId":"LowTL"},"content":"public class Katleen {","lastModifiedDate":"2024-01-25"},{"lineNumber":4,"author":{"gitId":"LowTL"},"content":" public static final String LINE \u003d \"____________________________________________________________\";","lastModifiedDate":"2024-02-02"},{"lineNumber":5,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-01-25"},{"lineNumber":6,"author":{"gitId":"LowTL"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-01-25"},{"lineNumber":7,"author":{"gitId":"LowTL"},"content":" System.out.println(LINE);","lastModifiedDate":"2024-02-02"},{"lineNumber":8,"author":{"gitId":"LowTL"},"content":" System.out.println(\"Hello! I\u0027m Katleen.\");","lastModifiedDate":"2024-01-25"},{"lineNumber":9,"author":{"gitId":"LowTL"},"content":" System.out.println(\"What can I do for you?\");","lastModifiedDate":"2024-01-29"},{"lineNumber":10,"author":{"gitId":"LowTL"},"content":" System.out.println(LINE);","lastModifiedDate":"2024-02-02"},{"lineNumber":11,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-01-29"},{"lineNumber":12,"author":{"gitId":"LowTL"},"content":" Task[] tasks \u003d new Task[100];","lastModifiedDate":"2024-01-29"},{"lineNumber":13,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":14,"author":{"gitId":"LowTL"},"content":" Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-01-29"},{"lineNumber":15,"author":{"gitId":"LowTL"},"content":" String text \u003d in.nextLine();","lastModifiedDate":"2024-01-29"},{"lineNumber":16,"author":{"gitId":"LowTL"},"content":" while (!text.equals(\"bye\")) {","lastModifiedDate":"2024-01-29"},{"lineNumber":17,"author":{"gitId":"LowTL"},"content":" String[] textSplit \u003d text.split(\" \");","lastModifiedDate":"2024-02-07"},{"lineNumber":18,"author":{"gitId":"LowTL"},"content":" String cmdWord \u003d textSplit[0];","lastModifiedDate":"2024-02-07"},{"lineNumber":19,"author":{"gitId":"LowTL"},"content":" System.out.println(LINE);","lastModifiedDate":"2024-02-02"},{"lineNumber":20,"author":{"gitId":"LowTL"},"content":" if (cmdWord.equals(\"mark\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":21,"author":{"gitId":"LowTL"},"content":" String index \u003d textSplit[1];","lastModifiedDate":"2024-02-07"},{"lineNumber":22,"author":{"gitId":"LowTL"},"content":" int i \u003d Integer.parseInt(index) - 1;","lastModifiedDate":"2024-02-02"},{"lineNumber":23,"author":{"gitId":"LowTL"},"content":" tasks[i].setDone(true);","lastModifiedDate":"2024-02-07"},{"lineNumber":24,"author":{"gitId":"LowTL"},"content":" System.out.println(\"Well done! This task is marked as done:\");","lastModifiedDate":"2024-01-30"},{"lineNumber":25,"author":{"gitId":"LowTL"},"content":" tasks[i].printTask();","lastModifiedDate":"2024-02-07"},{"lineNumber":26,"author":{"gitId":"LowTL"},"content":" } else if (cmdWord.equals(\"unmark\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":27,"author":{"gitId":"LowTL"},"content":" String index \u003d textSplit[1];","lastModifiedDate":"2024-02-07"},{"lineNumber":28,"author":{"gitId":"LowTL"},"content":" int i \u003d Integer.parseInt(index) - 1;","lastModifiedDate":"2024-02-07"},{"lineNumber":29,"author":{"gitId":"LowTL"},"content":" tasks[i].setDone(false);","lastModifiedDate":"2024-02-07"},{"lineNumber":30,"author":{"gitId":"LowTL"},"content":" System.out.println(\"This task is marked as undone:\");","lastModifiedDate":"2024-01-30"},{"lineNumber":31,"author":{"gitId":"LowTL"},"content":" tasks[i].printTask();","lastModifiedDate":"2024-01-30"},{"lineNumber":32,"author":{"gitId":"LowTL"},"content":" } else if (cmdWord.equals(\"list\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":33,"author":{"gitId":"LowTL"},"content":" System.out.println(\"Here are the tasks in your list:\");","lastModifiedDate":"2024-01-30"},{"lineNumber":34,"author":{"gitId":"LowTL"},"content":" for (int i \u003d 0; i \u003c Task.getTaskCount(); i++) {","lastModifiedDate":"2024-02-07"},{"lineNumber":35,"author":{"gitId":"LowTL"},"content":" System.out.print((i+1) + \". \");","lastModifiedDate":"2024-02-07"},{"lineNumber":36,"author":{"gitId":"LowTL"},"content":" tasks[i].printTask();","lastModifiedDate":"2024-01-30"},{"lineNumber":37,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-01-29"},{"lineNumber":38,"author":{"gitId":"LowTL"},"content":" } else if (cmdWord.equals(\"todo\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":39,"author":{"gitId":"LowTL"},"content":" System.out.println(\"Added: \");","lastModifiedDate":"2024-02-07"},{"lineNumber":40,"author":{"gitId":"LowTL"},"content":" int i \u003d Task.getTaskCount();","lastModifiedDate":"2024-02-07"},{"lineNumber":41,"author":{"gitId":"LowTL"},"content":" ToDo task \u003d new ToDo(text.replace(\"todo \", \"\").trim());","lastModifiedDate":"2024-02-08"},{"lineNumber":42,"author":{"gitId":"LowTL"},"content":" tasks[i] \u003d task;","lastModifiedDate":"2024-02-07"},{"lineNumber":43,"author":{"gitId":"LowTL"},"content":" tasks[i].printTask();","lastModifiedDate":"2024-02-07"},{"lineNumber":44,"author":{"gitId":"LowTL"},"content":" } else if (cmdWord.equals(\"deadline\")) {","lastModifiedDate":"2024-02-08"},{"lineNumber":45,"author":{"gitId":"LowTL"},"content":" System.out.println(\"Added: \");","lastModifiedDate":"2024-02-08"},{"lineNumber":46,"author":{"gitId":"LowTL"},"content":" int i \u003d Task.getTaskCount();","lastModifiedDate":"2024-02-08"},{"lineNumber":47,"author":{"gitId":"LowTL"},"content":" int due \u003d text.indexOf(\"/by\");","lastModifiedDate":"2024-02-09"},{"lineNumber":48,"author":{"gitId":"LowTL"},"content":" String by \u003d text.substring(due + 3).trim();","lastModifiedDate":"2024-02-09"},{"lineNumber":49,"author":{"gitId":"LowTL"},"content":" String deadline \u003d text.substring(8, due).trim();","lastModifiedDate":"2024-02-09"},{"lineNumber":50,"author":{"gitId":"LowTL"},"content":" Deadline task \u003d new Deadline(deadline, by);","lastModifiedDate":"2024-02-09"},{"lineNumber":51,"author":{"gitId":"LowTL"},"content":" tasks[i] \u003d task;","lastModifiedDate":"2024-02-08"},{"lineNumber":52,"author":{"gitId":"LowTL"},"content":" tasks[i].printTask();","lastModifiedDate":"2024-02-08"},{"lineNumber":53,"author":{"gitId":"LowTL"},"content":" } else if (cmdWord.equals(\"event\")) {","lastModifiedDate":"2024-02-08"},{"lineNumber":54,"author":{"gitId":"LowTL"},"content":" System.out.println(\"Added: \");","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"LowTL"},"content":" int i \u003d Task.getTaskCount();","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"LowTL"},"content":" int splitFrom \u003d text.indexOf(\"/from\");","lastModifiedDate":"2024-02-09"},{"lineNumber":57,"author":{"gitId":"LowTL"},"content":" int splitTo \u003d text.indexOf(\"/to\");","lastModifiedDate":"2024-02-09"},{"lineNumber":58,"author":{"gitId":"LowTL"},"content":" String from \u003d text.substring(splitFrom + 5, splitTo).trim();","lastModifiedDate":"2024-02-09"},{"lineNumber":59,"author":{"gitId":"LowTL"},"content":" String to \u003d text.substring(splitTo + 3).trim();","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"LowTL"},"content":" String event \u003d text.substring(5, splitFrom).trim();","lastModifiedDate":"2024-02-09"},{"lineNumber":61,"author":{"gitId":"LowTL"},"content":" Event task \u003d new Event(event, from, to);","lastModifiedDate":"2024-02-09"},{"lineNumber":62,"author":{"gitId":"LowTL"},"content":" tasks[i] \u003d task;","lastModifiedDate":"2024-02-09"},{"lineNumber":63,"author":{"gitId":"LowTL"},"content":" tasks[i].printTask();","lastModifiedDate":"2024-02-09"},{"lineNumber":64,"author":{"gitId":"LowTL"},"content":" } else {","lastModifiedDate":"2024-01-30"},{"lineNumber":65,"author":{"gitId":"LowTL"},"content":" System.out.println(\"Invalid command, please try again\");","lastModifiedDate":"2024-02-07"},{"lineNumber":66,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-01-29"},{"lineNumber":67,"author":{"gitId":"LowTL"},"content":" System.out.println(LINE);","lastModifiedDate":"2024-02-02"},{"lineNumber":68,"author":{"gitId":"LowTL"},"content":" text \u003d in.nextLine().trim();","lastModifiedDate":"2024-02-08"},{"lineNumber":69,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-01-29"},{"lineNumber":70,"author":{"gitId":"LowTL"},"content":" System.out.println(LINE);","lastModifiedDate":"2024-02-02"},{"lineNumber":71,"author":{"gitId":"LowTL"},"content":" System.out.println(\"Bye, have a nice day!\");","lastModifiedDate":"2024-02-02"},{"lineNumber":72,"author":{"gitId":"LowTL"},"content":" System.out.println(LINE);","lastModifiedDate":"2024-02-02"},{"lineNumber":73,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-01-25"},{"lineNumber":74,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":75,"author":{"gitId":"LowTL"},"content":"}","lastModifiedDate":"2024-01-25"}],"authorContributionMap":{"LowTL":75}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"LowTL"},"content":"public class Task {","lastModifiedDate":"2024-01-29"},{"lineNumber":2,"author":{"gitId":"LowTL"},"content":" protected String description;","lastModifiedDate":"2024-01-29"},{"lineNumber":3,"author":{"gitId":"LowTL"},"content":" protected boolean isDone;","lastModifiedDate":"2024-01-29"},{"lineNumber":4,"author":{"gitId":"LowTL"},"content":" private static int taskCount \u003d 0;","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-01-29"},{"lineNumber":6,"author":{"gitId":"LowTL"},"content":" public Task(String desc) {","lastModifiedDate":"2024-01-29"},{"lineNumber":7,"author":{"gitId":"LowTL"},"content":" this.description \u003d desc;","lastModifiedDate":"2024-01-29"},{"lineNumber":8,"author":{"gitId":"LowTL"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-01-29"},{"lineNumber":9,"author":{"gitId":"LowTL"},"content":" taskCount++;","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-01-29"},{"lineNumber":11,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":12,"author":{"gitId":"LowTL"},"content":" public void setDone(boolean done) {","lastModifiedDate":"2024-02-07"},{"lineNumber":13,"author":{"gitId":"LowTL"},"content":" this.isDone \u003d done;","lastModifiedDate":"2024-02-07"},{"lineNumber":14,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":15,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":16,"author":{"gitId":"LowTL"},"content":" public void printTask() {","lastModifiedDate":"2024-01-30"},{"lineNumber":17,"author":{"gitId":"LowTL"},"content":" System.out.println(this);","lastModifiedDate":"2024-02-08"},{"lineNumber":18,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":19,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":20,"author":{"gitId":"LowTL"},"content":" public String printDone() {","lastModifiedDate":"2024-01-30"},{"lineNumber":21,"author":{"gitId":"LowTL"},"content":" return (this.isDone ? \"X\" : \" \");","lastModifiedDate":"2024-01-30"},{"lineNumber":22,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":23,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":24,"author":{"gitId":"LowTL"},"content":" public static int getTaskCount() {","lastModifiedDate":"2024-02-07"},{"lineNumber":25,"author":{"gitId":"LowTL"},"content":" return taskCount;","lastModifiedDate":"2024-02-07"},{"lineNumber":26,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":27,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":28,"author":{"gitId":"LowTL"},"content":" @Override","lastModifiedDate":"2024-02-08"},{"lineNumber":29,"author":{"gitId":"LowTL"},"content":" public String toString() {","lastModifiedDate":"2024-02-08"},{"lineNumber":30,"author":{"gitId":"LowTL"},"content":" return \"[\" + this.printDone() + \"] \" + this.description;","lastModifiedDate":"2024-02-08"},{"lineNumber":31,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":32,"author":{"gitId":"LowTL"},"content":"}","lastModifiedDate":"2024-01-29"}],"authorContributionMap":{"LowTL":32}},{"path":"src/main/java/ToDo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"LowTL"},"content":"public class ToDo extends Task {","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"LowTL"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"LowTL"},"content":" public ToDo(String desc) {","lastModifiedDate":"2024-02-07"},{"lineNumber":4,"author":{"gitId":"LowTL"},"content":" super(desc);","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":6,"author":{"gitId":"LowTL"},"content":" @Override","lastModifiedDate":"2024-02-07"},{"lineNumber":7,"author":{"gitId":"LowTL"},"content":" public String toString() {","lastModifiedDate":"2024-02-07"},{"lineNumber":8,"author":{"gitId":"LowTL"},"content":" return \"[T]\" + super.toString();","lastModifiedDate":"2024-02-07"},{"lineNumber":9,"author":{"gitId":"LowTL"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"LowTL"},"content":"}","lastModifiedDate":"2024-02-07"}],"authorContributionMap":{"LowTL":10}}] diff --git a/LowTL_ip_master/commits.json b/LowTL_ip_master/commits.json index a0fcb232..c8af5f07 100644 --- a/LowTL_ip_master/commits.json +++ b/LowTL_ip_master/commits.json @@ -1 +1 @@ -{"authorDailyContributionsMap":{"LowTL":[{"date":"2024-01-25","commitResults":[{"hash":"8544ebb611c3a6aced5059b736106f898d55dabb","isMergeCommit":false,"messageTitle":"Replace Duke.java with Katleen.java","messageBody":"","tags":["Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":14,"deletions":10}}}]},{"date":"2024-01-29","commitResults":[{"hash":"6233d62259e2400c2f1ca89e694dfd5ba2411ef1","isMergeCommit":false,"messageTitle":"Add echo to Katleen.java","messageBody":"","tags":["Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":17,"deletions":3}}},{"hash":"9ce9c7c98ce9763018d1b30104eab3c44a8b76bf","isMergeCommit":false,"messageTitle":"Create Task.java","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":9,"deletions":0}}},{"hash":"861988d030ff3926e412f86281cdcd817c1b4875","isMergeCommit":false,"messageTitle":"Add Add, List functions","messageBody":"","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":26,"deletions":9}}}]},{"date":"2024-01-30","commitResults":[{"hash":"e3921e974f046c6954413afd97ee532e7fc3d722","isMergeCommit":false,"messageTitle":"Add basic mark as done function","messageBody":"","tags":["Level-3"],"fileTypesAndContributionMap":{"java":{"insertions":36,"deletions":9}}}]},{"date":"2024-02-02","commitResults":[{"hash":"d9ba96c5822562525ddfa48bb83048c3de94e05a","isMergeCommit":false,"messageTitle":"Remove repetition of printing line","messageBody":"","tags":["A-CodingStandard"],"fileTypesAndContributionMap":{"java":{"insertions":13,"deletions":18}}}]},{"date":"2024-02-07","commitResults":[{"hash":"70ac577fd050d426ba4e0b0398f205a2e99a2c14","isMergeCommit":false,"messageTitle":"Add ToDo class and function","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":42,"deletions":23}}}]},{"date":"2024-02-08","commitResults":[{"hash":"6a84c9a3f31d57355f10fbc83a1cc11120838a4c","isMergeCommit":false,"messageTitle":"Add Deadline class","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":29,"deletions":1}}},{"hash":"acaa1399c6351290a9017819eccb52e5fc0d553e","isMergeCommit":false,"messageTitle":"Fix printTask function","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":14,"deletions":9}}}]}]},"authorFileTypeContributionMap":{"LowTL":{"java":128,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"LowTL":519.2925},"authorDisplayNameMap":{"LowTL":"CS2113-T15-4 LOW .. LYM"}} +{"authorDailyContributionsMap":{"LowTL":[{"date":"2024-01-25","commitResults":[{"hash":"8544ebb611c3a6aced5059b736106f898d55dabb","isMergeCommit":false,"messageTitle":"Replace Duke.java with Katleen.java","messageBody":"","tags":["Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":14,"deletions":10}}}]},{"date":"2024-01-29","commitResults":[{"hash":"6233d62259e2400c2f1ca89e694dfd5ba2411ef1","isMergeCommit":false,"messageTitle":"Add echo to Katleen.java","messageBody":"","tags":["Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":17,"deletions":3}}},{"hash":"9ce9c7c98ce9763018d1b30104eab3c44a8b76bf","isMergeCommit":false,"messageTitle":"Create Task.java","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":9,"deletions":0}}},{"hash":"861988d030ff3926e412f86281cdcd817c1b4875","isMergeCommit":false,"messageTitle":"Add Add, List functions","messageBody":"","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":26,"deletions":9}}}]},{"date":"2024-01-30","commitResults":[{"hash":"e3921e974f046c6954413afd97ee532e7fc3d722","isMergeCommit":false,"messageTitle":"Add basic mark as done function","messageBody":"","tags":["Level-3"],"fileTypesAndContributionMap":{"java":{"insertions":36,"deletions":9}}}]},{"date":"2024-02-02","commitResults":[{"hash":"d9ba96c5822562525ddfa48bb83048c3de94e05a","isMergeCommit":false,"messageTitle":"Remove repetition of printing line","messageBody":"","tags":["A-CodingStandard"],"fileTypesAndContributionMap":{"java":{"insertions":13,"deletions":18}}}]},{"date":"2024-02-07","commitResults":[{"hash":"70ac577fd050d426ba4e0b0398f205a2e99a2c14","isMergeCommit":false,"messageTitle":"Add ToDo class and function","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":42,"deletions":23}}}]},{"date":"2024-02-08","commitResults":[{"hash":"6a84c9a3f31d57355f10fbc83a1cc11120838a4c","isMergeCommit":false,"messageTitle":"Add Deadline class","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":29,"deletions":1}}},{"hash":"acaa1399c6351290a9017819eccb52e5fc0d553e","isMergeCommit":false,"messageTitle":"Fix printTask function","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":14,"deletions":9}}}]},{"date":"2024-02-09","commitResults":[{"hash":"111198237f6f88f489bacd8e1a7c66d162c91427","isMergeCommit":false,"messageTitle":"Fix Deadline printing","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":2,"deletions":1}}},{"hash":"43b51633605befd1ece3c09811da9c23cef4eba4","isMergeCommit":false,"messageTitle":"Add Event class","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":14,"deletions":0}}},{"hash":"c67896aa0f5b6bfaf34abd0eda09116b7260994e","isMergeCommit":false,"messageTitle":"Add creating new event case","messageBody":"","tags":["Level-4","A-CodeQuality"],"fileTypesAndContributionMap":{"java":{"insertions":14,"deletions":4}}}]}]},"authorFileTypeContributionMap":{"LowTL":{"java":153,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"LowTL":515.8781},"authorDisplayNameMap":{"LowTL":"CS2113-T15-4 LOW .. LYM"}} diff --git a/NGXZS_ip_master/authorship.json b/NGXZS_ip_master/authorship.json index 7580d1c9..8e0bd4bb 100644 --- a/NGXZS_ip_master/authorship.json +++ b/NGXZS_ip_master/authorship.json @@ -1 +1 @@ -[{"path":"src/main/java/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"NGXZS"},"content":"public class Deadline extends Task{","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"NGXZS"},"content":" protected String by;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"NGXZS"},"content":" public Deadline(String description, String by){","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"NGXZS"},"content":" super(description + by);","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"NGXZS"},"content":" this.type \u003d \u0027D\u0027;","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"NGXZS"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"NGXZS"},"content":" public char getType() {","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"NGXZS"},"content":" return this.type;","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"NGXZS"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"NGXZS":13}},{"path":"src/main/java/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"NGXZS"},"content":"public class Event extends Task{","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"NGXZS"},"content":" protected String timeRange;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"NGXZS"},"content":" public Event(String description, String timeRange){","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"NGXZS"},"content":" super(description + timeRange);","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"NGXZS"},"content":" this.type \u003d \u0027E\u0027;","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"NGXZS"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"NGXZS"},"content":" public char getType() {","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"NGXZS"},"content":" return this.type;","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"NGXZS"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"NGXZS":13}},{"path":"src/main/java/RecrBad.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"NGXZS"},"content":"import java.util.Arrays;","lastModifiedDate":"2024-02-05"},{"lineNumber":2,"author":{"gitId":"NGXZS"},"content":"import java.util.Random;","lastModifiedDate":"2024-01-23"},{"lineNumber":3,"author":{"gitId":"NGXZS"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-03"},{"lineNumber":4,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-01-23"},{"lineNumber":5,"author":{"gitId":"NGXZS"},"content":"public class RecrBad {","lastModifiedDate":"2024-01-23"},{"lineNumber":6,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-01-23"},{"lineNumber":7,"author":{"gitId":"NGXZS"},"content":" private static Task[] addEventTask(final int startIndexOfDescription, String line, Task[] tasks){","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"NGXZS"},"content":" Task[] moreTasks \u003d Arrays.copyOf(tasks, tasks.length + 1);","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"NGXZS"},"content":" int indexTo \u003d line.lastIndexOf(\u0027/\u0027);","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"NGXZS"},"content":" int indexFrom \u003d line.lastIndexOf(\u0027/\u0027, indexTo - 1); // counts from back","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"NGXZS"},"content":" if (indexFrom \u003d\u003d -1 || indexTo \u003d\u003d -1) { //not found","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"Please input BOTH start and end timing parameters by adding \u0027/\u0027 followed by the start timing, then \u0027 \u0027, \u0027/\u0027 and end timing\");","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"NGXZS"},"content":" return tasks;","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"NGXZS"},"content":" String description \u003d line.substring(startIndexOfDescription, indexFrom - 1);","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"NGXZS"},"content":" String timeRange \u003d \" (from: \" + line.substring(indexFrom + 1, indexTo) +","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"NGXZS"},"content":" \"to: \" + line.substring(indexTo + 1) + \")\";","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"NGXZS"},"content":" moreTasks[tasks.length] \u003d new Event(description, timeRange); //append at last elem","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"Event added!\");","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"NGXZS"},"content":" return moreTasks;","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":22,"author":{"gitId":"NGXZS"},"content":" private static Task[] addDeadlineTask(int startIndexOfDescription, String line, Task[] tasks){","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"NGXZS"},"content":" Task[] moreTasks \u003d Arrays.copyOf(tasks, tasks.length + 1);","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"NGXZS"},"content":" int indexDeadline \u003d line.lastIndexOf(\u0027/\u0027);","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"NGXZS"},"content":" if (indexDeadline \u003d\u003d -1) { // no deadline argument","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"Please input a deadline by adding a parameter \u0027/\u0027 followed by the deadline\");","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"NGXZS"},"content":" return tasks;","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"NGXZS"},"content":" String deadline \u003d \"(by: \" + line.substring(indexDeadline + 1) + \")\";","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"NGXZS"},"content":" String description \u003d line.substring(startIndexOfDescription, indexDeadline);","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"NGXZS"},"content":" moreTasks[tasks.length] \u003d new Deadline(description, deadline); //append at last elem","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"Deadline added!\");","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"NGXZS"},"content":" return moreTasks;","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"NGXZS"},"content":" private static Task[] addTodoTask(final int startIndexOfDescription, String line, Task[] tasks){","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"NGXZS"},"content":" Task[] moreTasks \u003d Arrays.copyOf(tasks, tasks.length + 1);","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"NGXZS"},"content":" String description \u003d line.substring(startIndexOfDescription);","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"NGXZS"},"content":" moreTasks[moreTasks.length - 1] \u003d new Todo(description); //append at last elem","lastModifiedDate":"2024-02-09"},{"lineNumber":39,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"Todo added!\");","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"NGXZS"},"content":" return moreTasks;","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-01-23"},{"lineNumber":42,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-03"},{"lineNumber":43,"author":{"gitId":"NGXZS"},"content":" /**","lastModifiedDate":"2024-02-05"},{"lineNumber":44,"author":{"gitId":"NGXZS"},"content":" * Adds new Task to Tasks array","lastModifiedDate":"2024-02-05"},{"lineNumber":45,"author":{"gitId":"NGXZS"},"content":" *","lastModifiedDate":"2024-02-05"},{"lineNumber":46,"author":{"gitId":"NGXZS"},"content":" * @param tasks existing Tasks array","lastModifiedDate":"2024-02-05"},{"lineNumber":47,"author":{"gitId":"NGXZS"},"content":" * @param line string input from user","lastModifiedDate":"2024-02-05"},{"lineNumber":48,"author":{"gitId":"NGXZS"},"content":" * @return moreTasks array with added Task","lastModifiedDate":"2024-02-05"},{"lineNumber":49,"author":{"gitId":"NGXZS"},"content":" */","lastModifiedDate":"2024-02-05"},{"lineNumber":50,"author":{"gitId":"NGXZS"},"content":" private static Task[] addToList(Task[] tasks, String[] req, String line) {","lastModifiedDate":"2024-02-09"},{"lineNumber":51,"author":{"gitId":"NGXZS"},"content":" // copies and returns longer String[tasks.length+1]","lastModifiedDate":"2024-02-05"},{"lineNumber":52,"author":{"gitId":"NGXZS"},"content":" Task[] moreTasks;","lastModifiedDate":"2024-02-09"},{"lineNumber":53,"author":{"gitId":"NGXZS"},"content":" String description;","lastModifiedDate":"2024-02-09"},{"lineNumber":54,"author":{"gitId":"NGXZS"},"content":" final int startIndexOfDescription \u003d req[0].length() + 1; //assume got space after TODO/deadline/event","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"NGXZS"},"content":" if (req[0].equalsIgnoreCase(\"TODO\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":57,"author":{"gitId":"NGXZS"},"content":" moreTasks \u003d addTodoTask(startIndexOfDescription, line, tasks);","lastModifiedDate":"2024-02-09"},{"lineNumber":58,"author":{"gitId":"NGXZS"},"content":" } else if (req[0].equalsIgnoreCase(\"DEADLINE\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":59,"author":{"gitId":"NGXZS"},"content":" moreTasks \u003d addDeadlineTask(startIndexOfDescription, line, tasks);","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"NGXZS"},"content":" } else if (req[0].equalsIgnoreCase(\"EVENT\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":61,"author":{"gitId":"NGXZS"},"content":" moreTasks \u003d addEventTask(startIndexOfDescription, line, tasks);","lastModifiedDate":"2024-02-09"},{"lineNumber":62,"author":{"gitId":"NGXZS"},"content":" } else { // normal tasks","lastModifiedDate":"2024-02-09"},{"lineNumber":63,"author":{"gitId":"NGXZS"},"content":" moreTasks \u003d Arrays.copyOf(tasks, tasks.length + 1);","lastModifiedDate":"2024-02-09"},{"lineNumber":64,"author":{"gitId":"NGXZS"},"content":" moreTasks[tasks.length] \u003d new Task(line); //append at last elem","lastModifiedDate":"2024-02-05"},{"lineNumber":65,"author":{"gitId":"NGXZS"},"content":" printHelper.printLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":66,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"You added: \");","lastModifiedDate":"2024-02-09"},{"lineNumber":67,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":68,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":69,"author":{"gitId":"NGXZS"},"content":" if (tasks.length \u003d\u003d moreTasks.length){ // invalid TODO/deadline/event format","lastModifiedDate":"2024-02-09"},{"lineNumber":70,"author":{"gitId":"NGXZS"},"content":" return tasks;","lastModifiedDate":"2024-02-09"},{"lineNumber":71,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":72,"author":{"gitId":"NGXZS"},"content":" displayListItem(moreTasks, tasks.length);","lastModifiedDate":"2024-02-09"},{"lineNumber":73,"author":{"gitId":"NGXZS"},"content":" System.out.println(System.lineSeparator() + \"Congrats, now have \" + moreTasks.length + \" tasks\");","lastModifiedDate":"2024-02-09"},{"lineNumber":74,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-03"},{"lineNumber":75,"author":{"gitId":"NGXZS"},"content":" return moreTasks;","lastModifiedDate":"2024-02-05"},{"lineNumber":76,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":77,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":78,"author":{"gitId":"NGXZS"},"content":" /**","lastModifiedDate":"2024-02-05"},{"lineNumber":79,"author":{"gitId":"NGXZS"},"content":" * Prints each Task in Task array","lastModifiedDate":"2024-02-05"},{"lineNumber":80,"author":{"gitId":"NGXZS"},"content":" *","lastModifiedDate":"2024-02-05"},{"lineNumber":81,"author":{"gitId":"NGXZS"},"content":" * @param tasks Existing Task array","lastModifiedDate":"2024-02-05"},{"lineNumber":82,"author":{"gitId":"NGXZS"},"content":" */","lastModifiedDate":"2024-02-05"},{"lineNumber":83,"author":{"gitId":"NGXZS"},"content":" private static void displayList(Task[] tasks) {","lastModifiedDate":"2024-02-05"},{"lineNumber":84,"author":{"gitId":"NGXZS"},"content":" int count \u003d 1;","lastModifiedDate":"2024-02-05"},{"lineNumber":85,"author":{"gitId":"NGXZS"},"content":" for (Task task : tasks) {","lastModifiedDate":"2024-02-09"},{"lineNumber":86,"author":{"gitId":"NGXZS"},"content":" System.out.println(count + \".[\" + task.getType() + \"][\"","lastModifiedDate":"2024-02-09"},{"lineNumber":87,"author":{"gitId":"NGXZS"},"content":" + task.getStatus() + \"] \" + task.description);","lastModifiedDate":"2024-02-09"},{"lineNumber":88,"author":{"gitId":"NGXZS"},"content":" count +\u003d 1;","lastModifiedDate":"2024-02-05"},{"lineNumber":89,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":90,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":91,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":92,"author":{"gitId":"NGXZS"},"content":" /**","lastModifiedDate":"2024-02-05"},{"lineNumber":93,"author":{"gitId":"NGXZS"},"content":" * Prints a specific task in Tasks array","lastModifiedDate":"2024-02-05"},{"lineNumber":94,"author":{"gitId":"NGXZS"},"content":" *","lastModifiedDate":"2024-02-05"},{"lineNumber":95,"author":{"gitId":"NGXZS"},"content":" * @param tasks existing Task array","lastModifiedDate":"2024-02-05"},{"lineNumber":96,"author":{"gitId":"NGXZS"},"content":" * @param index index of specific task","lastModifiedDate":"2024-02-05"},{"lineNumber":97,"author":{"gitId":"NGXZS"},"content":" */","lastModifiedDate":"2024-02-05"},{"lineNumber":98,"author":{"gitId":"NGXZS"},"content":" private static void displayListItem(Task[] tasks, int index) {","lastModifiedDate":"2024-02-05"},{"lineNumber":99,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"[\" + tasks[index].getType() + \"][\"","lastModifiedDate":"2024-02-09"},{"lineNumber":100,"author":{"gitId":"NGXZS"},"content":" + tasks[index].getStatus() + \"] \"","lastModifiedDate":"2024-02-09"},{"lineNumber":101,"author":{"gitId":"NGXZS"},"content":" + tasks[index].description);","lastModifiedDate":"2024-02-09"},{"lineNumber":102,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":103,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":104,"author":{"gitId":"NGXZS"},"content":" /**","lastModifiedDate":"2024-02-05"},{"lineNumber":105,"author":{"gitId":"NGXZS"},"content":" * Marks Task as done or not done","lastModifiedDate":"2024-02-05"},{"lineNumber":106,"author":{"gitId":"NGXZS"},"content":" *","lastModifiedDate":"2024-02-05"},{"lineNumber":107,"author":{"gitId":"NGXZS"},"content":" * @param tasks existing Tasks array","lastModifiedDate":"2024-02-05"},{"lineNumber":108,"author":{"gitId":"NGXZS"},"content":" * @param req String[] input from user","lastModifiedDate":"2024-02-09"},{"lineNumber":109,"author":{"gitId":"NGXZS"},"content":" * @param isMark type of operation: mark or unmark","lastModifiedDate":"2024-02-05"},{"lineNumber":110,"author":{"gitId":"NGXZS"},"content":" */","lastModifiedDate":"2024-02-05"},{"lineNumber":111,"author":{"gitId":"NGXZS"},"content":" private static void markOperation(Task[] tasks, String[] req, boolean isMark) {","lastModifiedDate":"2024-02-09"},{"lineNumber":112,"author":{"gitId":"NGXZS"},"content":" if (req.length \u003c 1) {","lastModifiedDate":"2024-02-09"},{"lineNumber":113,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"invalid mark/ unmark operation\");","lastModifiedDate":"2024-02-09"},{"lineNumber":114,"author":{"gitId":"NGXZS"},"content":" return;","lastModifiedDate":"2024-02-09"},{"lineNumber":115,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":116,"author":{"gitId":"NGXZS"},"content":" int taskNum \u003d Integer.parseInt(req[1]);","lastModifiedDate":"2024-02-05"},{"lineNumber":117,"author":{"gitId":"NGXZS"},"content":" if (tasks.length \u003c taskNum) {","lastModifiedDate":"2024-02-09"},{"lineNumber":118,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"No such taskNum\");","lastModifiedDate":"2024-02-09"},{"lineNumber":119,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":120,"author":{"gitId":"NGXZS"},"content":" if (isMark) { // MARK #taskNum as done","lastModifiedDate":"2024-02-09"},{"lineNumber":121,"author":{"gitId":"NGXZS"},"content":" tasks[taskNum - 1].markAsDone();","lastModifiedDate":"2024-02-05"},{"lineNumber":122,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"Okie dokie, marked task below:\");","lastModifiedDate":"2024-02-05"},{"lineNumber":123,"author":{"gitId":"NGXZS"},"content":" } else {","lastModifiedDate":"2024-02-05"},{"lineNumber":124,"author":{"gitId":"NGXZS"},"content":" tasks[taskNum - 1].markAsNotDone();","lastModifiedDate":"2024-02-05"},{"lineNumber":125,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"Okie dokie, unmarked task below:\");","lastModifiedDate":"2024-02-05"},{"lineNumber":126,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":127,"author":{"gitId":"NGXZS"},"content":" displayListItem(tasks, taskNum - 1);","lastModifiedDate":"2024-02-05"},{"lineNumber":128,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":129,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":130,"author":{"gitId":"NGXZS"},"content":" /**","lastModifiedDate":"2024-02-05"},{"lineNumber":131,"author":{"gitId":"NGXZS"},"content":" * Input","lastModifiedDate":"2024-02-09"},{"lineNumber":132,"author":{"gitId":"NGXZS"},"content":" * [any text] to addToList,","lastModifiedDate":"2024-02-09"},{"lineNumber":133,"author":{"gitId":"NGXZS"},"content":" * list to displayList,","lastModifiedDate":"2024-02-09"},{"lineNumber":134,"author":{"gitId":"NGXZS"},"content":" * mark/unmark [index] to mark item","lastModifiedDate":"2024-02-09"},{"lineNumber":135,"author":{"gitId":"NGXZS"},"content":" */","lastModifiedDate":"2024-02-05"},{"lineNumber":136,"author":{"gitId":"NGXZS"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-02-05"},{"lineNumber":137,"author":{"gitId":"NGXZS"},"content":" Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-05"},{"lineNumber":138,"author":{"gitId":"NGXZS"},"content":" printHelper.sayHi();","lastModifiedDate":"2024-02-09"},{"lineNumber":139,"author":{"gitId":"NGXZS"},"content":" Task[] tasks \u003d new Task[]{};","lastModifiedDate":"2024-02-05"},{"lineNumber":140,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-03"},{"lineNumber":141,"author":{"gitId":"NGXZS"},"content":" while (true) {","lastModifiedDate":"2024-02-03"},{"lineNumber":142,"author":{"gitId":"NGXZS"},"content":" printHelper.printLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":143,"author":{"gitId":"NGXZS"},"content":" String line \u003d in.nextLine(); // reads input","lastModifiedDate":"2024-02-03"},{"lineNumber":144,"author":{"gitId":"NGXZS"},"content":" String[] req \u003d line.split(\" \");","lastModifiedDate":"2024-02-09"},{"lineNumber":145,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":146,"author":{"gitId":"NGXZS"},"content":" if (req[0].equalsIgnoreCase(\"BYE\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":147,"author":{"gitId":"NGXZS"},"content":" printHelper.sayBye(); // Ctrl B to see def, shift F10 to run, Ctrl Alt L reformat","lastModifiedDate":"2024-02-09"},{"lineNumber":148,"author":{"gitId":"NGXZS"},"content":" break;","lastModifiedDate":"2024-02-03"},{"lineNumber":149,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-03"},{"lineNumber":150,"author":{"gitId":"NGXZS"},"content":" if (req[0].equalsIgnoreCase(\"LIST\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":151,"author":{"gitId":"NGXZS"},"content":" displayList(tasks);","lastModifiedDate":"2024-02-05"},{"lineNumber":152,"author":{"gitId":"NGXZS"},"content":" continue;","lastModifiedDate":"2024-02-05"},{"lineNumber":153,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":154,"author":{"gitId":"NGXZS"},"content":" if (req[0].toUpperCase().contains(\"MARK\")) { // both unmark \u0026 mark contains \u0027mark\u0027","lastModifiedDate":"2024-02-09"},{"lineNumber":155,"author":{"gitId":"NGXZS"},"content":" boolean isMark \u003d !line.toUpperCase().contains(\"UNMARK\");","lastModifiedDate":"2024-02-05"},{"lineNumber":156,"author":{"gitId":"NGXZS"},"content":" markOperation(tasks, req, isMark);","lastModifiedDate":"2024-02-09"},{"lineNumber":157,"author":{"gitId":"NGXZS"},"content":" continue;","lastModifiedDate":"2024-02-05"},{"lineNumber":158,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":159,"author":{"gitId":"NGXZS"},"content":" tasks \u003d addToList(tasks, req, line);","lastModifiedDate":"2024-02-09"},{"lineNumber":160,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-03"},{"lineNumber":161,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-03"},{"lineNumber":162,"author":{"gitId":"NGXZS"},"content":"}","lastModifiedDate":"2024-01-23"}],"authorContributionMap":{"NGXZS":162}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"NGXZS"},"content":"public class Task {","lastModifiedDate":"2024-02-05"},{"lineNumber":2,"author":{"gitId":"NGXZS"},"content":" protected String description;","lastModifiedDate":"2024-02-05"},{"lineNumber":3,"author":{"gitId":"NGXZS"},"content":" protected boolean isDone;","lastModifiedDate":"2024-02-05"},{"lineNumber":4,"author":{"gitId":"NGXZS"},"content":" protected char type;","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":6,"author":{"gitId":"NGXZS"},"content":" public Task(String description){","lastModifiedDate":"2024-02-05"},{"lineNumber":7,"author":{"gitId":"NGXZS"},"content":" this.description \u003d description;","lastModifiedDate":"2024-02-05"},{"lineNumber":8,"author":{"gitId":"NGXZS"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-05"},{"lineNumber":9,"author":{"gitId":"NGXZS"},"content":" this.type \u003d \u0027 \u0027;","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":11,"author":{"gitId":"NGXZS"},"content":" public String getStatus(){","lastModifiedDate":"2024-02-05"},{"lineNumber":12,"author":{"gitId":"NGXZS"},"content":" return (isDone ? \"X\" : \" \"); // mark done task w X","lastModifiedDate":"2024-02-05"},{"lineNumber":13,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":14,"author":{"gitId":"NGXZS"},"content":" public void markAsDone(){","lastModifiedDate":"2024-02-05"},{"lineNumber":15,"author":{"gitId":"NGXZS"},"content":" isDone \u003d true;","lastModifiedDate":"2024-02-05"},{"lineNumber":16,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":17,"author":{"gitId":"NGXZS"},"content":" public void markAsNotDone(){","lastModifiedDate":"2024-02-05"},{"lineNumber":18,"author":{"gitId":"NGXZS"},"content":" isDone \u003d false;","lastModifiedDate":"2024-02-05"},{"lineNumber":19,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":20,"author":{"gitId":"NGXZS"},"content":" public char getType(){","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"NGXZS"},"content":" return type;","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":24,"author":{"gitId":"NGXZS"},"content":"}","lastModifiedDate":"2024-02-05"}],"authorContributionMap":{"NGXZS":24}},{"path":"src/main/java/Todo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"NGXZS"},"content":"public class Todo extends Task{","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"NGXZS"},"content":" public Todo(String description){","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"NGXZS"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"NGXZS"},"content":" this.type \u003d \u0027T\u0027;","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"NGXZS"},"content":" public char getType(){","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"NGXZS"},"content":" return this.type;","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"NGXZS"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"NGXZS":13}},{"path":"src/main/java/printHelper.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"NGXZS"},"content":"import java.util.Random;","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"NGXZS"},"content":"public class printHelper {","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"NGXZS"},"content":" /**","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"NGXZS"},"content":" * Prints \"*\" as line-separator","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"NGXZS"},"content":" */","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"NGXZS"},"content":" public static void printLine() {","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"NGXZS"},"content":" final int CHARS_IN_LINE \u003d 40;","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"NGXZS"},"content":" for (int i \u003d 0; i \u003c CHARS_IN_LINE; i++) {","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"NGXZS"},"content":" System.out.print(\"*\");","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"NGXZS"},"content":" System.out.println();","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"NGXZS"},"content":" /**","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"NGXZS"},"content":" * Prints introductory message","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"NGXZS"},"content":" */","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"NGXZS"},"content":" public static void sayHi() {","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"NGXZS"},"content":" String logo \u003d \" ____ ___ ___ ____ ___ \\n\"","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"NGXZS"},"content":" + \"| __/ / _ \\\\ | _ \\\\ | __| / _ \\\\ \\n\"","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"NGXZS"},"content":" + \"| | ||_|| | / / | |_ | | | \\n\"","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"NGXZS"},"content":" + \"| |_ | _ | | _/ |_ / | | | \\n\"","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"NGXZS"},"content":" + \"|___\\\\ // \\\\\\\\ |_| /__/ . \\\\___/ \\n\";","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"Hello! I\u0027m \\n\" + logo);","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"NGXZS"},"content":" printLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"What can I do for you?\");","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"NGXZS"},"content":" /**","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"NGXZS"},"content":" * Prints ending message","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"NGXZS"},"content":" */","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"NGXZS"},"content":" public static void sayBye() {","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"NGXZS"},"content":" // generating random quote","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"NGXZS"},"content":" Random rand \u003d new Random(); // create instance of class Random","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"NGXZS"},"content":" // quotes inspired by https://wisdomquotes.com/short-quotes/, https://wisdomquotes.com/positive-quotes/","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"NGXZS"},"content":" String[] quotes \u003d {","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"NGXZS"},"content":" \"2230 | Time Block\",","lastModifiedDate":"2024-02-09"},{"lineNumber":39,"author":{"gitId":"NGXZS"},"content":" \"The best investment is in yourself\",","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"NGXZS"},"content":" \"Never regret anything that made you smile ~Mark Twain\",","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"NGXZS"},"content":" \"You are the main character in your life\",","lastModifiedDate":"2024-02-09"},{"lineNumber":42,"author":{"gitId":"NGXZS"},"content":" \"Life is like riding a bicycle. To keep your balance, you must keep moving ~Albert Einstein\",","lastModifiedDate":"2024-02-09"},{"lineNumber":43,"author":{"gitId":"NGXZS"},"content":" \"Stay hungry, Stay Foolish ~Steve Jobs\",","lastModifiedDate":"2024-02-09"},{"lineNumber":44,"author":{"gitId":"NGXZS"},"content":" \"You only live once, but if you do it right, once is enough ~Mae West\",","lastModifiedDate":"2024-02-09"},{"lineNumber":45,"author":{"gitId":"NGXZS"},"content":" \"Choose one thing and be the best in it\",","lastModifiedDate":"2024-02-09"},{"lineNumber":46,"author":{"gitId":"NGXZS"},"content":" \"Don\u0027t tell people your plans. Show them your results\",","lastModifiedDate":"2024-02-09"},{"lineNumber":47,"author":{"gitId":"NGXZS"},"content":" \"Good things happen to those who hustle ~Anais Nin\",","lastModifiedDate":"2024-02-09"},{"lineNumber":48,"author":{"gitId":"NGXZS"},"content":" \"If you want it, work for it\",","lastModifiedDate":"2024-02-09"},{"lineNumber":49,"author":{"gitId":"NGXZS"},"content":" \"If it matters to you, you\u0027ll find a way ~Charlie Gilkey\",","lastModifiedDate":"2024-02-09"},{"lineNumber":50,"author":{"gitId":"NGXZS"},"content":" \"If you\u0027re going through hell, keep going ~Winston Churchill\",","lastModifiedDate":"2024-02-09"},{"lineNumber":51,"author":{"gitId":"NGXZS"},"content":" \"Small steps motivate. Big steps overwhelm ~Maxime Lagace\",","lastModifiedDate":"2024-02-09"},{"lineNumber":52,"author":{"gitId":"NGXZS"},"content":" \"The difference btwn a good and bad day is your ATTITUDE! ~a magnet\",","lastModifiedDate":"2024-02-09"},{"lineNumber":53,"author":{"gitId":"NGXZS"},"content":" \"The less you respond to negative people, the more positive your life will become ~Paulo Coelho\",","lastModifiedDate":"2024-02-09"},{"lineNumber":54,"author":{"gitId":"NGXZS"},"content":" \"Always know your goals in life\",","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"NGXZS"},"content":" \"Often, the problem is not the lack of time but lack of direction\"","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"NGXZS"},"content":" };","lastModifiedDate":"2024-02-09"},{"lineNumber":57,"author":{"gitId":"NGXZS"},"content":" int upperbound \u003d quotes.length;","lastModifiedDate":"2024-02-09"},{"lineNumber":58,"author":{"gitId":"NGXZS"},"content":" int randNum \u003d rand.nextInt(upperbound);","lastModifiedDate":"2024-02-09"},{"lineNumber":59,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"Adios My Friend. Sleep early, study smarter \\n\" + quotes[randNum]);","lastModifiedDate":"2024-02-09"},{"lineNumber":61,"author":{"gitId":"NGXZS"},"content":" printLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":62,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":63,"author":{"gitId":"NGXZS"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"NGXZS":63}}] +[{"path":"src/main/java/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"NGXZS"},"content":"public class Deadline extends Task{","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"NGXZS"},"content":" protected String by;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"NGXZS"},"content":" public Deadline(String description, String by){","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"NGXZS"},"content":" super(description + by);","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"NGXZS"},"content":" this.type \u003d \u0027D\u0027;","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"NGXZS"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"NGXZS"},"content":" public char getType() {","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"NGXZS"},"content":" return this.type;","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"NGXZS"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"NGXZS":13}},{"path":"src/main/java/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"NGXZS"},"content":"public class Event extends Task{","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"NGXZS"},"content":" protected String timeRange;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"NGXZS"},"content":" public Event(String description, String timeRange){","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"NGXZS"},"content":" super(description + timeRange);","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"NGXZS"},"content":" this.type \u003d \u0027E\u0027;","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"NGXZS"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"NGXZS"},"content":" public char getType() {","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"NGXZS"},"content":" return this.type;","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"NGXZS"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"NGXZS":13}},{"path":"src/main/java/PrintHelper.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"NGXZS"},"content":"import java.util.Random;","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"NGXZS"},"content":"public class PrintHelper {","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"NGXZS"},"content":" /**","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"NGXZS"},"content":" * Prints \"*\" as line-separator","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"NGXZS"},"content":" */","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"NGXZS"},"content":" public static void printLine() {","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"NGXZS"},"content":" final int CHARS_IN_LINE \u003d 40;","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"NGXZS"},"content":" for (int i \u003d 0; i \u003c CHARS_IN_LINE; i++) {","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"NGXZS"},"content":" System.out.print(\"*\");","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"NGXZS"},"content":" System.out.println();","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"NGXZS"},"content":" /**","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"NGXZS"},"content":" * Prints introductory message","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"NGXZS"},"content":" */","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"NGXZS"},"content":" public static void sayHi() {","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"NGXZS"},"content":" String logo \u003d \" ____ ___ ___ ____ ___ \\n\"","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"NGXZS"},"content":" + \"| __/ / _ \\\\ | _ \\\\ | __| / _ \\\\ \\n\"","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"NGXZS"},"content":" + \"| | ||_|| | / / | |_ | | | \\n\"","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"NGXZS"},"content":" + \"| |_ | _ | | _/ |_ / | | | \\n\"","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"NGXZS"},"content":" + \"|___\\\\ // \\\\\\\\ |_| /__/ . \\\\___/ \\n\";","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"Hello! I\u0027m \\n\" + logo);","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"NGXZS"},"content":" printLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"What can I do for you?\");","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"NGXZS"},"content":" /**","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"NGXZS"},"content":" * Prints ending message","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"NGXZS"},"content":" */","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"NGXZS"},"content":" public static void sayBye() {","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"NGXZS"},"content":" // generating random quote","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"NGXZS"},"content":" Random rand \u003d new Random(); // create instance of class Random","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"NGXZS"},"content":" // quotes inspired by https://wisdomquotes.com/short-quotes/, https://wisdomquotes.com/positive-quotes/","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"NGXZS"},"content":" String[] quotes \u003d {","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"NGXZS"},"content":" \"2230 | Time Block\",","lastModifiedDate":"2024-02-09"},{"lineNumber":39,"author":{"gitId":"NGXZS"},"content":" \"The best investment is in yourself\",","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"NGXZS"},"content":" \"Never regret anything that made you smile ~Mark Twain\",","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"NGXZS"},"content":" \"You are the main character in your life\",","lastModifiedDate":"2024-02-09"},{"lineNumber":42,"author":{"gitId":"NGXZS"},"content":" \"Life is like riding a bicycle. To keep your balance, you must keep moving ~Albert Einstein\",","lastModifiedDate":"2024-02-09"},{"lineNumber":43,"author":{"gitId":"NGXZS"},"content":" \"Stay hungry, Stay Foolish ~Steve Jobs\",","lastModifiedDate":"2024-02-09"},{"lineNumber":44,"author":{"gitId":"NGXZS"},"content":" \"You only live once, but if you do it right, once is enough ~Mae West\",","lastModifiedDate":"2024-02-09"},{"lineNumber":45,"author":{"gitId":"NGXZS"},"content":" \"Choose one thing and be the best in it\",","lastModifiedDate":"2024-02-09"},{"lineNumber":46,"author":{"gitId":"NGXZS"},"content":" \"Don\u0027t tell people your plans. Show them your results\",","lastModifiedDate":"2024-02-09"},{"lineNumber":47,"author":{"gitId":"NGXZS"},"content":" \"Good things happen to those who hustle ~Anais Nin\",","lastModifiedDate":"2024-02-09"},{"lineNumber":48,"author":{"gitId":"NGXZS"},"content":" \"If you want it, work for it\",","lastModifiedDate":"2024-02-09"},{"lineNumber":49,"author":{"gitId":"NGXZS"},"content":" \"If it matters to you, you\u0027ll find a way ~Charlie Gilkey\",","lastModifiedDate":"2024-02-09"},{"lineNumber":50,"author":{"gitId":"NGXZS"},"content":" \"If you\u0027re going through hell, keep going ~Winston Churchill\",","lastModifiedDate":"2024-02-09"},{"lineNumber":51,"author":{"gitId":"NGXZS"},"content":" \"Small steps motivate. Big steps overwhelm ~Maxime Lagace\",","lastModifiedDate":"2024-02-09"},{"lineNumber":52,"author":{"gitId":"NGXZS"},"content":" \"The difference btwn a good and bad day is your ATTITUDE! ~a magnet\",","lastModifiedDate":"2024-02-09"},{"lineNumber":53,"author":{"gitId":"NGXZS"},"content":" \"The less you respond to negative people, the more positive your life will become ~Paulo Coelho\",","lastModifiedDate":"2024-02-09"},{"lineNumber":54,"author":{"gitId":"NGXZS"},"content":" \"Always know your goals in life\",","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"NGXZS"},"content":" \"Often, the problem is not the lack of time but lack of direction\"","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"NGXZS"},"content":" };","lastModifiedDate":"2024-02-09"},{"lineNumber":57,"author":{"gitId":"NGXZS"},"content":" int upperbound \u003d quotes.length;","lastModifiedDate":"2024-02-09"},{"lineNumber":58,"author":{"gitId":"NGXZS"},"content":" int randNum \u003d rand.nextInt(upperbound);","lastModifiedDate":"2024-02-09"},{"lineNumber":59,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"Adios My Friend. Sleep early, study smarter \\n\" + quotes[randNum]);","lastModifiedDate":"2024-02-09"},{"lineNumber":61,"author":{"gitId":"NGXZS"},"content":" printLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":62,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":63,"author":{"gitId":"NGXZS"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"NGXZS":63}},{"path":"src/main/java/RecrBad.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"NGXZS"},"content":"import java.util.Arrays;","lastModifiedDate":"2024-02-05"},{"lineNumber":2,"author":{"gitId":"NGXZS"},"content":"import java.util.Random;","lastModifiedDate":"2024-01-23"},{"lineNumber":3,"author":{"gitId":"NGXZS"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-03"},{"lineNumber":4,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-01-23"},{"lineNumber":5,"author":{"gitId":"NGXZS"},"content":"public class RecrBad {","lastModifiedDate":"2024-01-23"},{"lineNumber":6,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-01-23"},{"lineNumber":7,"author":{"gitId":"NGXZS"},"content":" private static Task[] addEventTask(final int startIndexOfDescription, String line, Task[] tasks){","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"NGXZS"},"content":" Task[] moreTasks \u003d Arrays.copyOf(tasks, tasks.length + 1);","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"NGXZS"},"content":" int indexTo \u003d line.lastIndexOf(\u0027/\u0027);","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"NGXZS"},"content":" int indexFrom \u003d line.lastIndexOf(\u0027/\u0027, indexTo - 1); // counts from back","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"NGXZS"},"content":" if (indexFrom \u003d\u003d -1 || indexTo \u003d\u003d -1) { // arguments not found","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"Invalid event: Add BOTH start and end parameters by adding \u0027/\u0027, start timing, then \u0027 \u0027, \u0027/\u0027 and end timing\");","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"NGXZS"},"content":" return tasks;","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"NGXZS"},"content":" // process input as Event object","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"NGXZS"},"content":" String description \u003d line.substring(startIndexOfDescription, indexFrom - 1);","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"NGXZS"},"content":" String timeRange \u003d \" (from: \" + line.substring(indexFrom + 1, indexTo) +","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"NGXZS"},"content":" \"to: \" + line.substring(indexTo + 1) + \")\";","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"NGXZS"},"content":" moreTasks[tasks.length] \u003d new Event(description, timeRange); //append at last elem","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"Event added!\");","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"NGXZS"},"content":" return moreTasks;","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":23,"author":{"gitId":"NGXZS"},"content":" private static Task[] addDeadlineTask(int startIndexOfDescription, String line, Task[] tasks){","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"NGXZS"},"content":" Task[] moreTasks \u003d Arrays.copyOf(tasks, tasks.length + 1);","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"NGXZS"},"content":" int indexDeadline \u003d line.lastIndexOf(\u0027/\u0027);","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"NGXZS"},"content":" if (indexDeadline \u003d\u003d -1) { // no deadline argument","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"Invalid deadline: Add a parameter \u0027/\u0027 followed by the deadline\");","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"NGXZS"},"content":" return tasks;","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"NGXZS"},"content":" // process input as Deadline object","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"NGXZS"},"content":" String deadline \u003d \"(by: \" + line.substring(indexDeadline + 1) + \")\";","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"NGXZS"},"content":" String description \u003d line.substring(startIndexOfDescription, indexDeadline);","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"NGXZS"},"content":" moreTasks[tasks.length] \u003d new Deadline(description, deadline); //append at last elem","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"Deadline added!\");","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"NGXZS"},"content":" return moreTasks;","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"NGXZS"},"content":" private static Task[] addTodoTask(final int startIndexOfDescription, String line, Task[] tasks){","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"NGXZS"},"content":" Task[] moreTasks \u003d Arrays.copyOf(tasks, tasks.length + 1);","lastModifiedDate":"2024-02-09"},{"lineNumber":39,"author":{"gitId":"NGXZS"},"content":" String description \u003d line.substring(startIndexOfDescription);","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"NGXZS"},"content":" moreTasks[moreTasks.length - 1] \u003d new Todo(description); //append at last elem","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"Todo added!\");","lastModifiedDate":"2024-02-09"},{"lineNumber":42,"author":{"gitId":"NGXZS"},"content":" return moreTasks;","lastModifiedDate":"2024-02-09"},{"lineNumber":43,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-01-23"},{"lineNumber":44,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-03"},{"lineNumber":45,"author":{"gitId":"NGXZS"},"content":" /**","lastModifiedDate":"2024-02-05"},{"lineNumber":46,"author":{"gitId":"NGXZS"},"content":" * Adds new Task to Tasks array","lastModifiedDate":"2024-02-05"},{"lineNumber":47,"author":{"gitId":"NGXZS"},"content":" *","lastModifiedDate":"2024-02-05"},{"lineNumber":48,"author":{"gitId":"NGXZS"},"content":" * @param tasks existing Tasks array","lastModifiedDate":"2024-02-05"},{"lineNumber":49,"author":{"gitId":"NGXZS"},"content":" * @param line string input from user","lastModifiedDate":"2024-02-05"},{"lineNumber":50,"author":{"gitId":"NGXZS"},"content":" * @return moreTasks array with added Task","lastModifiedDate":"2024-02-05"},{"lineNumber":51,"author":{"gitId":"NGXZS"},"content":" */","lastModifiedDate":"2024-02-05"},{"lineNumber":52,"author":{"gitId":"NGXZS"},"content":" private static Task[] addToList(Task[] tasks, String[] req, String line) {","lastModifiedDate":"2024-02-09"},{"lineNumber":53,"author":{"gitId":"NGXZS"},"content":" // copies and returns longer String[tasks.length+1]","lastModifiedDate":"2024-02-05"},{"lineNumber":54,"author":{"gitId":"NGXZS"},"content":" Task[] moreTasks;","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"NGXZS"},"content":" String description;","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"NGXZS"},"content":" final int startIndexOfDescription \u003d req[0].length() + 1; //assume got space after TODO/deadline/event","lastModifiedDate":"2024-02-09"},{"lineNumber":57,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":58,"author":{"gitId":"NGXZS"},"content":" if (req[0].equalsIgnoreCase(\"TODO\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":59,"author":{"gitId":"NGXZS"},"content":" moreTasks \u003d addTodoTask(startIndexOfDescription, line, tasks);","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"NGXZS"},"content":" } else if (req[0].equalsIgnoreCase(\"DEADLINE\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":61,"author":{"gitId":"NGXZS"},"content":" moreTasks \u003d addDeadlineTask(startIndexOfDescription, line, tasks);","lastModifiedDate":"2024-02-09"},{"lineNumber":62,"author":{"gitId":"NGXZS"},"content":" } else if (req[0].equalsIgnoreCase(\"EVENT\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":63,"author":{"gitId":"NGXZS"},"content":" moreTasks \u003d addEventTask(startIndexOfDescription, line, tasks);","lastModifiedDate":"2024-02-09"},{"lineNumber":64,"author":{"gitId":"NGXZS"},"content":" } else { // normal tasks","lastModifiedDate":"2024-02-09"},{"lineNumber":65,"author":{"gitId":"NGXZS"},"content":" moreTasks \u003d Arrays.copyOf(tasks, tasks.length + 1);","lastModifiedDate":"2024-02-09"},{"lineNumber":66,"author":{"gitId":"NGXZS"},"content":" moreTasks[tasks.length] \u003d new Task(line); //append at last elem","lastModifiedDate":"2024-02-05"},{"lineNumber":67,"author":{"gitId":"NGXZS"},"content":" PrintHelper.printLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":68,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"You added: \");","lastModifiedDate":"2024-02-09"},{"lineNumber":69,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":70,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":71,"author":{"gitId":"NGXZS"},"content":" if (tasks.length \u003d\u003d moreTasks.length){ // invalid TODO/deadline/event format","lastModifiedDate":"2024-02-09"},{"lineNumber":72,"author":{"gitId":"NGXZS"},"content":" return tasks;","lastModifiedDate":"2024-02-09"},{"lineNumber":73,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":74,"author":{"gitId":"NGXZS"},"content":" displayListItem(moreTasks, tasks.length);","lastModifiedDate":"2024-02-09"},{"lineNumber":75,"author":{"gitId":"NGXZS"},"content":" System.out.println(System.lineSeparator() + \"Congrats, now have \" + moreTasks.length + \" tasks\");","lastModifiedDate":"2024-02-09"},{"lineNumber":76,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-03"},{"lineNumber":77,"author":{"gitId":"NGXZS"},"content":" return moreTasks;","lastModifiedDate":"2024-02-05"},{"lineNumber":78,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":79,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":80,"author":{"gitId":"NGXZS"},"content":" /**","lastModifiedDate":"2024-02-05"},{"lineNumber":81,"author":{"gitId":"NGXZS"},"content":" * Prints each Task in Task array","lastModifiedDate":"2024-02-05"},{"lineNumber":82,"author":{"gitId":"NGXZS"},"content":" *","lastModifiedDate":"2024-02-05"},{"lineNumber":83,"author":{"gitId":"NGXZS"},"content":" * @param tasks Existing Task array","lastModifiedDate":"2024-02-05"},{"lineNumber":84,"author":{"gitId":"NGXZS"},"content":" */","lastModifiedDate":"2024-02-05"},{"lineNumber":85,"author":{"gitId":"NGXZS"},"content":" private static void displayList(Task[] tasks) {","lastModifiedDate":"2024-02-05"},{"lineNumber":86,"author":{"gitId":"NGXZS"},"content":" int count \u003d 1;","lastModifiedDate":"2024-02-05"},{"lineNumber":87,"author":{"gitId":"NGXZS"},"content":" for (Task task : tasks) {","lastModifiedDate":"2024-02-09"},{"lineNumber":88,"author":{"gitId":"NGXZS"},"content":" System.out.println(count + \".[\" + task.getType() + \"][\"","lastModifiedDate":"2024-02-09"},{"lineNumber":89,"author":{"gitId":"NGXZS"},"content":" + task.getStatus() + \"] \" + task.description);","lastModifiedDate":"2024-02-09"},{"lineNumber":90,"author":{"gitId":"NGXZS"},"content":" count +\u003d 1;","lastModifiedDate":"2024-02-05"},{"lineNumber":91,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":92,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":93,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":94,"author":{"gitId":"NGXZS"},"content":" /**","lastModifiedDate":"2024-02-05"},{"lineNumber":95,"author":{"gitId":"NGXZS"},"content":" * Prints a specific task in Tasks array","lastModifiedDate":"2024-02-05"},{"lineNumber":96,"author":{"gitId":"NGXZS"},"content":" *","lastModifiedDate":"2024-02-05"},{"lineNumber":97,"author":{"gitId":"NGXZS"},"content":" * @param tasks existing Task array","lastModifiedDate":"2024-02-05"},{"lineNumber":98,"author":{"gitId":"NGXZS"},"content":" * @param index index of specific task","lastModifiedDate":"2024-02-05"},{"lineNumber":99,"author":{"gitId":"NGXZS"},"content":" */","lastModifiedDate":"2024-02-05"},{"lineNumber":100,"author":{"gitId":"NGXZS"},"content":" private static void displayListItem(Task[] tasks, int index) {","lastModifiedDate":"2024-02-05"},{"lineNumber":101,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"[\" + tasks[index].getType() + \"][\"","lastModifiedDate":"2024-02-09"},{"lineNumber":102,"author":{"gitId":"NGXZS"},"content":" + tasks[index].getStatus() + \"] \"","lastModifiedDate":"2024-02-09"},{"lineNumber":103,"author":{"gitId":"NGXZS"},"content":" + tasks[index].description);","lastModifiedDate":"2024-02-09"},{"lineNumber":104,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":105,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":106,"author":{"gitId":"NGXZS"},"content":" /**","lastModifiedDate":"2024-02-05"},{"lineNumber":107,"author":{"gitId":"NGXZS"},"content":" * Marks Task as done or not done","lastModifiedDate":"2024-02-05"},{"lineNumber":108,"author":{"gitId":"NGXZS"},"content":" *","lastModifiedDate":"2024-02-05"},{"lineNumber":109,"author":{"gitId":"NGXZS"},"content":" * @param tasks existing Tasks array","lastModifiedDate":"2024-02-05"},{"lineNumber":110,"author":{"gitId":"NGXZS"},"content":" * @param req String[] input from user","lastModifiedDate":"2024-02-09"},{"lineNumber":111,"author":{"gitId":"NGXZS"},"content":" * @param isMark type of operation: mark or unmark","lastModifiedDate":"2024-02-05"},{"lineNumber":112,"author":{"gitId":"NGXZS"},"content":" */","lastModifiedDate":"2024-02-05"},{"lineNumber":113,"author":{"gitId":"NGXZS"},"content":" private static void markOperation(Task[] tasks, String[] req, boolean isMark) {","lastModifiedDate":"2024-02-09"},{"lineNumber":114,"author":{"gitId":"NGXZS"},"content":" if (req.length \u003c 1) {","lastModifiedDate":"2024-02-09"},{"lineNumber":115,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"invalid mark/ unmark operation\");","lastModifiedDate":"2024-02-09"},{"lineNumber":116,"author":{"gitId":"NGXZS"},"content":" return;","lastModifiedDate":"2024-02-09"},{"lineNumber":117,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":118,"author":{"gitId":"NGXZS"},"content":" int taskNum \u003d Integer.parseInt(req[1]);","lastModifiedDate":"2024-02-05"},{"lineNumber":119,"author":{"gitId":"NGXZS"},"content":" if (tasks.length \u003c taskNum) {","lastModifiedDate":"2024-02-09"},{"lineNumber":120,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"No such taskNum\");","lastModifiedDate":"2024-02-09"},{"lineNumber":121,"author":{"gitId":"NGXZS"},"content":" return;","lastModifiedDate":"2024-02-09"},{"lineNumber":122,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":123,"author":{"gitId":"NGXZS"},"content":" if (isMark) { // MARK #taskNum as done","lastModifiedDate":"2024-02-09"},{"lineNumber":124,"author":{"gitId":"NGXZS"},"content":" tasks[taskNum - 1].markAsDone();","lastModifiedDate":"2024-02-05"},{"lineNumber":125,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"Has marked task\" + taskNum + \":\");","lastModifiedDate":"2024-02-09"},{"lineNumber":126,"author":{"gitId":"NGXZS"},"content":" } else {","lastModifiedDate":"2024-02-05"},{"lineNumber":127,"author":{"gitId":"NGXZS"},"content":" tasks[taskNum - 1].markAsNotDone();","lastModifiedDate":"2024-02-05"},{"lineNumber":128,"author":{"gitId":"NGXZS"},"content":" System.out.println(\"Has unmarked task\" + taskNum + \":\");","lastModifiedDate":"2024-02-09"},{"lineNumber":129,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":130,"author":{"gitId":"NGXZS"},"content":" displayListItem(tasks, taskNum - 1);","lastModifiedDate":"2024-02-05"},{"lineNumber":131,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":132,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":133,"author":{"gitId":"NGXZS"},"content":" /**","lastModifiedDate":"2024-02-05"},{"lineNumber":134,"author":{"gitId":"NGXZS"},"content":" * Input","lastModifiedDate":"2024-02-09"},{"lineNumber":135,"author":{"gitId":"NGXZS"},"content":" * [any text] to addToList,","lastModifiedDate":"2024-02-09"},{"lineNumber":136,"author":{"gitId":"NGXZS"},"content":" * list to displayList,","lastModifiedDate":"2024-02-09"},{"lineNumber":137,"author":{"gitId":"NGXZS"},"content":" * mark/unmark [index] to mark item","lastModifiedDate":"2024-02-09"},{"lineNumber":138,"author":{"gitId":"NGXZS"},"content":" */","lastModifiedDate":"2024-02-05"},{"lineNumber":139,"author":{"gitId":"NGXZS"},"content":" public static void main(String[] args) { // Ctrl B to see def, shift F10 to run, Ctrl Alt L reformat","lastModifiedDate":"2024-02-09"},{"lineNumber":140,"author":{"gitId":"NGXZS"},"content":" Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-05"},{"lineNumber":141,"author":{"gitId":"NGXZS"},"content":" PrintHelper.sayHi();","lastModifiedDate":"2024-02-09"},{"lineNumber":142,"author":{"gitId":"NGXZS"},"content":" Task[] tasks \u003d new Task[]{};","lastModifiedDate":"2024-02-05"},{"lineNumber":143,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-03"},{"lineNumber":144,"author":{"gitId":"NGXZS"},"content":" while (true) {","lastModifiedDate":"2024-02-03"},{"lineNumber":145,"author":{"gitId":"NGXZS"},"content":" PrintHelper.printLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":146,"author":{"gitId":"NGXZS"},"content":" String line \u003d in.nextLine(); // reads input","lastModifiedDate":"2024-02-03"},{"lineNumber":147,"author":{"gitId":"NGXZS"},"content":" String[] req \u003d line.split(\" \");","lastModifiedDate":"2024-02-09"},{"lineNumber":148,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":149,"author":{"gitId":"NGXZS"},"content":" if (req[0].equalsIgnoreCase(\"BYE\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":150,"author":{"gitId":"NGXZS"},"content":" PrintHelper.sayBye();","lastModifiedDate":"2024-02-09"},{"lineNumber":151,"author":{"gitId":"NGXZS"},"content":" break; // EXITS loop","lastModifiedDate":"2024-02-09"},{"lineNumber":152,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-03"},{"lineNumber":153,"author":{"gitId":"NGXZS"},"content":" if (req[0].equalsIgnoreCase(\"LIST\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":154,"author":{"gitId":"NGXZS"},"content":" displayList(tasks);","lastModifiedDate":"2024-02-05"},{"lineNumber":155,"author":{"gitId":"NGXZS"},"content":" continue; // GOTO next iteration of loop","lastModifiedDate":"2024-02-09"},{"lineNumber":156,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":157,"author":{"gitId":"NGXZS"},"content":" if (req[0].toUpperCase().contains(\"MARK\")) { // both unmark \u0026 mark contains \u0027mark\u0027","lastModifiedDate":"2024-02-09"},{"lineNumber":158,"author":{"gitId":"NGXZS"},"content":" boolean isMark \u003d !line.toUpperCase().contains(\"UNMARK\");","lastModifiedDate":"2024-02-05"},{"lineNumber":159,"author":{"gitId":"NGXZS"},"content":" markOperation(tasks, req, isMark);","lastModifiedDate":"2024-02-09"},{"lineNumber":160,"author":{"gitId":"NGXZS"},"content":" continue; //GOTO next iteration of loop","lastModifiedDate":"2024-02-09"},{"lineNumber":161,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":162,"author":{"gitId":"NGXZS"},"content":" tasks \u003d addToList(tasks, req, line);","lastModifiedDate":"2024-02-09"},{"lineNumber":163,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-03"},{"lineNumber":164,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-03"},{"lineNumber":165,"author":{"gitId":"NGXZS"},"content":"}","lastModifiedDate":"2024-01-23"}],"authorContributionMap":{"NGXZS":165}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"NGXZS"},"content":"public class Task {","lastModifiedDate":"2024-02-05"},{"lineNumber":2,"author":{"gitId":"NGXZS"},"content":" protected String description;","lastModifiedDate":"2024-02-05"},{"lineNumber":3,"author":{"gitId":"NGXZS"},"content":" protected boolean isDone;","lastModifiedDate":"2024-02-05"},{"lineNumber":4,"author":{"gitId":"NGXZS"},"content":" protected char type;","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":6,"author":{"gitId":"NGXZS"},"content":" public Task(String description){","lastModifiedDate":"2024-02-05"},{"lineNumber":7,"author":{"gitId":"NGXZS"},"content":" this.description \u003d description;","lastModifiedDate":"2024-02-05"},{"lineNumber":8,"author":{"gitId":"NGXZS"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-05"},{"lineNumber":9,"author":{"gitId":"NGXZS"},"content":" this.type \u003d \u0027 \u0027;","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":11,"author":{"gitId":"NGXZS"},"content":" public String getStatus(){","lastModifiedDate":"2024-02-05"},{"lineNumber":12,"author":{"gitId":"NGXZS"},"content":" return (isDone ? \"X\" : \" \"); // mark done task w X","lastModifiedDate":"2024-02-05"},{"lineNumber":13,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":14,"author":{"gitId":"NGXZS"},"content":" public void markAsDone(){","lastModifiedDate":"2024-02-05"},{"lineNumber":15,"author":{"gitId":"NGXZS"},"content":" isDone \u003d true;","lastModifiedDate":"2024-02-05"},{"lineNumber":16,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":17,"author":{"gitId":"NGXZS"},"content":" public void markAsNotDone(){","lastModifiedDate":"2024-02-05"},{"lineNumber":18,"author":{"gitId":"NGXZS"},"content":" isDone \u003d false;","lastModifiedDate":"2024-02-05"},{"lineNumber":19,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":20,"author":{"gitId":"NGXZS"},"content":" public char getType(){","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"NGXZS"},"content":" return type;","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":24,"author":{"gitId":"NGXZS"},"content":"}","lastModifiedDate":"2024-02-05"}],"authorContributionMap":{"NGXZS":24}},{"path":"src/main/java/Todo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"NGXZS"},"content":"public class Todo extends Task{","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"NGXZS"},"content":" public Todo(String description){","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"NGXZS"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"NGXZS"},"content":" this.type \u003d \u0027T\u0027;","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"NGXZS"},"content":" public char getType(){","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"NGXZS"},"content":" return this.type;","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"NGXZS"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"NGXZS"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"NGXZS"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"NGXZS":13}},{"path":"text-ui-test/input.txt","fileType":"txt","lines":[{"lineNumber":1,"author":{"gitId":"NGXZS"},"content":"item1","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"NGXZS"},"content":"item2","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"NGXZS"},"content":"item3","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"NGXZS"},"content":"list","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"NGXZS"},"content":"mark 1","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"NGXZS"},"content":"mark 3","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"NGXZS"},"content":"list","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"NGXZS"},"content":"unmark 1","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"NGXZS"},"content":"todo task1","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"NGXZS"},"content":"deadline task2 /Wednesday","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"NGXZS"},"content":"deadline noDeadline","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"NGXZS"},"content":"event task3 /9am /6pm","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"NGXZS"},"content":"event invalidEvent /sss","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"NGXZS"},"content":"bye","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"NGXZS":14}},{"path":"text-ui-test/runtest.bat","fileType":"bat","lines":[{"lineNumber":1,"author":{"gitId":"-"},"content":"@ECHO OFF","lastModifiedDate":"2020-05-25"},{"lineNumber":2,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":3,"author":{"gitId":"-"},"content":"REM create bin directory if it doesn\u0027t exist","lastModifiedDate":"2020-05-25"},{"lineNumber":4,"author":{"gitId":"-"},"content":"if not exist ..\\bin mkdir ..\\bin","lastModifiedDate":"2020-05-25"},{"lineNumber":5,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":6,"author":{"gitId":"-"},"content":"REM delete output from previous run","lastModifiedDate":"2020-05-25"},{"lineNumber":7,"author":{"gitId":"-"},"content":"if exist ACTUAL.TXT del ACTUAL.TXT","lastModifiedDate":"2020-08-25"},{"lineNumber":8,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":9,"author":{"gitId":"-"},"content":"REM compile the code into the bin folder","lastModifiedDate":"2020-05-25"},{"lineNumber":10,"author":{"gitId":"-"},"content":"javac -cp ..\\src\\main\\java -Xlint:none -d ..\\bin ..\\src\\main\\java\\*.java","lastModifiedDate":"2020-08-25"},{"lineNumber":11,"author":{"gitId":"-"},"content":"IF ERRORLEVEL 1 (","lastModifiedDate":"2020-05-25"},{"lineNumber":12,"author":{"gitId":"-"},"content":" echo ********** BUILD FAILURE **********","lastModifiedDate":"2020-05-25"},{"lineNumber":13,"author":{"gitId":"-"},"content":" exit /b 1","lastModifiedDate":"2020-05-25"},{"lineNumber":14,"author":{"gitId":"-"},"content":")","lastModifiedDate":"2020-05-25"},{"lineNumber":15,"author":{"gitId":"-"},"content":"REM no error here, errorlevel \u003d\u003d 0","lastModifiedDate":"2020-05-25"},{"lineNumber":16,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":17,"author":{"gitId":"-"},"content":"REM run the program, feed commands from input.txt file and redirect the output to the ACTUAL.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":18,"author":{"gitId":"NGXZS"},"content":"java -classpath ..\\bin RecrBad \u003c input.txt \u003e ACTUAL.TXT","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":20,"author":{"gitId":"-"},"content":"REM compare the output to the expected output","lastModifiedDate":"2020-05-25"},{"lineNumber":21,"author":{"gitId":"-"},"content":"FC ACTUAL.TXT EXPECTED.TXT","lastModifiedDate":"2020-05-25"}],"authorContributionMap":{"NGXZS":1,"-":20}}] diff --git a/NGXZS_ip_master/commits.json b/NGXZS_ip_master/commits.json index f9cc47f6..b2afa429 100644 --- a/NGXZS_ip_master/commits.json +++ b/NGXZS_ip_master/commits.json @@ -1 +1 @@ -{"authorDailyContributionsMap":{"NGXZS":[{"date":"2024-01-23","commitResults":[{"hash":"acff142bc88c27b668b3940cd6c66f1f04351f6a","isMergeCommit":false,"messageTitle":"Modify RecrBad.java and .gitignore","messageBody":"","tags":["Lvl-0"],"fileTypesAndContributionMap":{"java":{"insertions":49,"deletions":10}}}]},{"date":"2024-02-03","commitResults":[{"hash":"dcb4977a764a6d6e953efe1a404e9eabb3772b61","isMergeCommit":false,"messageTitle":"Add Level1: Echo","messageBody":"","tags":["Lvl-1"],"fileTypesAndContributionMap":{"java":{"insertions":29,"deletions":12}}}]},{"date":"2024-02-05","commitResults":[{"hash":"89642a17e8bfc34f8d72c264a676e3de8c9a770c","isMergeCommit":false,"messageTitle":"Add Level2 Add, List","messageBody":"","tags":["Lvl-2"],"fileTypesAndContributionMap":{"java":{"insertions":43,"deletions":11}}},{"hash":"b78ae9aef8ae5223cfb923e9b26a9cb755f67bd9","isMergeCommit":false,"messageTitle":"Add Level 3 Mark as Done, Task class","messageBody":"","tags":["Lvl-3"],"fileTypesAndContributionMap":{"java":{"insertions":56,"deletions":7}}},{"hash":"6796f52fd100fb9be54de323960827079c2110d6","isMergeCommit":false,"messageTitle":"Modify coding standards","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":60,"deletions":24}}},{"hash":"e4ea7793c7da493a41572367e3a7bec118e72150","isMergeCommit":false,"messageTitle":"Modify coding standards","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":60,"deletions":24}}},{"hash":"1ba0f338fab18a3f8fbe55985ca5d638a5b5da1a","isMergeCommit":true,"messageTitle":"Merge branch \u0027master\u0027 of https://github.com/NGXZS/ip","messageBody":"# Conflicts:\n#\tsrc/main/java/RecrBad.java\n","fileTypesAndContributionMap":{}}]},{"date":"2024-02-09","commitResults":[{"hash":"1bdb651bd899b01a369ba3524a9eed37937ba6f2","isMergeCommit":false,"messageTitle":"Add Level 4 Inheritance and Code Quality","messageBody":"","tags":["Lvl-4"],"fileTypesAndContributionMap":{"java":{"insertions":199,"deletions":94}}}]}]},"authorFileTypeContributionMap":{"NGXZS":{"java":288,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"NGXZS":6879.149},"authorDisplayNameMap":{"NGXZS":"CS2113-F15-1 NG X..SEAN"}} +{"authorDailyContributionsMap":{"NGXZS":[{"date":"2024-01-23","commitResults":[{"hash":"acff142bc88c27b668b3940cd6c66f1f04351f6a","isMergeCommit":false,"messageTitle":"Modify RecrBad.java and .gitignore","messageBody":"","tags":["Lvl-0"],"fileTypesAndContributionMap":{"java":{"insertions":49,"deletions":10}}}]},{"date":"2024-02-03","commitResults":[{"hash":"dcb4977a764a6d6e953efe1a404e9eabb3772b61","isMergeCommit":false,"messageTitle":"Add Level1: Echo","messageBody":"","tags":["Lvl-1"],"fileTypesAndContributionMap":{"java":{"insertions":29,"deletions":12}}}]},{"date":"2024-02-05","commitResults":[{"hash":"89642a17e8bfc34f8d72c264a676e3de8c9a770c","isMergeCommit":false,"messageTitle":"Add Level2 Add, List","messageBody":"","tags":["Lvl-2"],"fileTypesAndContributionMap":{"java":{"insertions":43,"deletions":11}}},{"hash":"b78ae9aef8ae5223cfb923e9b26a9cb755f67bd9","isMergeCommit":false,"messageTitle":"Add Level 3 Mark as Done, Task class","messageBody":"","tags":["Lvl-3"],"fileTypesAndContributionMap":{"java":{"insertions":56,"deletions":7}}},{"hash":"6796f52fd100fb9be54de323960827079c2110d6","isMergeCommit":false,"messageTitle":"Modify coding standards","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":60,"deletions":24}}},{"hash":"e4ea7793c7da493a41572367e3a7bec118e72150","isMergeCommit":false,"messageTitle":"Modify coding standards","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":60,"deletions":24}}},{"hash":"1ba0f338fab18a3f8fbe55985ca5d638a5b5da1a","isMergeCommit":true,"messageTitle":"Merge branch \u0027master\u0027 of https://github.com/NGXZS/ip","messageBody":"# Conflicts:\n#\tsrc/main/java/RecrBad.java\n","fileTypesAndContributionMap":{}}]},{"date":"2024-02-09","commitResults":[{"hash":"1bdb651bd899b01a369ba3524a9eed37937ba6f2","isMergeCommit":false,"messageTitle":"Add Level 4 Inheritance and Code Quality","messageBody":"","tags":["Lvl-4"],"fileTypesAndContributionMap":{"java":{"insertions":199,"deletions":94}}},{"hash":"31bd476fef23e9a944442d670767a2a87739d55c","isMergeCommit":false,"messageTitle":"A-TextUITesting","messageBody":"","tags":["A-TextUITesting"],"fileTypesAndContributionMap":{"txt":{"insertions":14,"deletions":0},"java":{"insertions":7,"deletions":7},"bat":{"insertions":1,"deletions":1}}},{"hash":"938755f498db20626a7b6609c4e1cf24e725db63","isMergeCommit":false,"messageTitle":"Cleanup code in PrintHelper class, addEventTask in RecrBad.java","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":10,"deletions":7}}}]}]},"authorFileTypeContributionMap":{"NGXZS":{"java":291,"md":0,"fxml":0,"sh":0,"bat":1,"gradle":0,"txt":14}},"authorContributionVariance":{"NGXZS":8095.225},"authorDisplayNameMap":{"NGXZS":"CS2113-F15-1 NG X..SEAN"}} diff --git a/PDHung1104_ip_master/authorship.json b/PDHung1104_ip_master/authorship.json index f8ae0745..ad0a4297 100644 --- a/PDHung1104_ip_master/authorship.json +++ b/PDHung1104_ip_master/authorship.json @@ -1 +1 @@ -[{"path":"src/main/java/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"PDHung1104"},"content":"// add code here","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"PDHung1104"},"content":"public class Deadline extends Task{","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"PDHung1104"},"content":" //Attributes","lastModifiedDate":"2024-02-07"},{"lineNumber":4,"author":{"gitId":"PDHung1104"},"content":" protected String by;","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":6,"author":{"gitId":"PDHung1104"},"content":" //Constructors","lastModifiedDate":"2024-02-07"},{"lineNumber":7,"author":{"gitId":"PDHung1104"},"content":" public Deadline(String name, String by){","lastModifiedDate":"2024-02-07"},{"lineNumber":8,"author":{"gitId":"PDHung1104"},"content":" super(name);","lastModifiedDate":"2024-02-07"},{"lineNumber":9,"author":{"gitId":"PDHung1104"},"content":" this.by \u003d by;","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":11,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":12,"author":{"gitId":"PDHung1104"},"content":" //Methods","lastModifiedDate":"2024-02-07"},{"lineNumber":13,"author":{"gitId":"PDHung1104"},"content":" public String toString(){","lastModifiedDate":"2024-02-07"},{"lineNumber":14,"author":{"gitId":"PDHung1104"},"content":" return \"[D]\" + super.toString() + \"(do by: \" + by + \")\";","lastModifiedDate":"2024-02-07"},{"lineNumber":15,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":16,"author":{"gitId":"PDHung1104"},"content":"}","lastModifiedDate":"2024-02-07"}],"authorContributionMap":{"PDHung1104":16}},{"path":"src/main/java/Duke.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"PDHung1104"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-01"},{"lineNumber":2,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-01"},{"lineNumber":3,"author":{"gitId":"-"},"content":"public class Duke {","lastModifiedDate":"2019-07-29"},{"lineNumber":4,"author":{"gitId":"PDHung1104"},"content":" public static final String LINE_SEPARATOR \u003d \"--------------------------------------\";","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"-"},"content":" public static void main(String[] args) {","lastModifiedDate":"2019-07-29"},{"lineNumber":6,"author":{"gitId":"PDHung1104"},"content":" String name \u003d \"Stella\";","lastModifiedDate":"2024-01-29"},{"lineNumber":7,"author":{"gitId":"PDHung1104"},"content":" System.out.println(\"Hello! I\u0027m \" + name);","lastModifiedDate":"2024-01-29"},{"lineNumber":8,"author":{"gitId":"PDHung1104"},"content":" System.out.println(\"What can I do for you?\");","lastModifiedDate":"2024-01-29"},{"lineNumber":9,"author":{"gitId":"PDHung1104"},"content":" System.out.println(LINE_SEPARATOR);","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":11,"author":{"gitId":"PDHung1104"},"content":" Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-01"},{"lineNumber":12,"author":{"gitId":"PDHung1104"},"content":" String line \u003d in.nextLine();","lastModifiedDate":"2024-02-01"},{"lineNumber":13,"author":{"gitId":"PDHung1104"},"content":" while (!line.equals(\"bye\")) {","lastModifiedDate":"2024-02-01"},{"lineNumber":14,"author":{"gitId":"PDHung1104"},"content":" Task.responseToCommand(line);","lastModifiedDate":"2024-02-07"},{"lineNumber":15,"author":{"gitId":"PDHung1104"},"content":" line \u003d in.nextLine();","lastModifiedDate":"2024-02-01"},{"lineNumber":16,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-01"},{"lineNumber":17,"author":{"gitId":"PDHung1104"},"content":" System.out.println(LINE_SEPARATOR);","lastModifiedDate":"2024-02-07"},{"lineNumber":18,"author":{"gitId":"PDHung1104"},"content":" System.out.println(\"Bye. Hope to see you again soon!\");","lastModifiedDate":"2024-01-29"},{"lineNumber":19,"author":{"gitId":"PDHung1104"},"content":" System.out.println(LINE_SEPARATOR);","lastModifiedDate":"2024-02-07"},{"lineNumber":20,"author":{"gitId":"-"},"content":" }","lastModifiedDate":"2019-07-29"},{"lineNumber":21,"author":{"gitId":"-"},"content":"}","lastModifiedDate":"2019-07-29"}],"authorContributionMap":{"PDHung1104":17,"-":4}},{"path":"src/main/java/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"PDHung1104"},"content":"public class Event extends Task{","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"PDHung1104"},"content":" //Attributes","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"PDHung1104"},"content":" protected String from;","lastModifiedDate":"2024-02-07"},{"lineNumber":4,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"PDHung1104"},"content":" protected String to;","lastModifiedDate":"2024-02-07"},{"lineNumber":6,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":7,"author":{"gitId":"PDHung1104"},"content":" //Constructors","lastModifiedDate":"2024-02-07"},{"lineNumber":8,"author":{"gitId":"PDHung1104"},"content":" public Event(String name, String from, String to){","lastModifiedDate":"2024-02-07"},{"lineNumber":9,"author":{"gitId":"PDHung1104"},"content":" super(name);","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"PDHung1104"},"content":" this.from \u003d from;","lastModifiedDate":"2024-02-07"},{"lineNumber":11,"author":{"gitId":"PDHung1104"},"content":" this.to \u003d to;","lastModifiedDate":"2024-02-07"},{"lineNumber":12,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":13,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":14,"author":{"gitId":"PDHung1104"},"content":" //Methods","lastModifiedDate":"2024-02-07"},{"lineNumber":15,"author":{"gitId":"PDHung1104"},"content":" public String toString(){","lastModifiedDate":"2024-02-07"},{"lineNumber":16,"author":{"gitId":"PDHung1104"},"content":" return \"[E]\" + super.toString() + \"(from: \" + from + \" \" + \"to: \" + to + \")\";","lastModifiedDate":"2024-02-07"},{"lineNumber":17,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":18,"author":{"gitId":"PDHung1104"},"content":"}","lastModifiedDate":"2024-02-07"}],"authorContributionMap":{"PDHung1104":18}},{"path":"src/main/java/Parser.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"PDHung1104"},"content":"public class Parser {","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"PDHung1104"},"content":" private static Deadline parseDeadline(String command){","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"PDHung1104"},"content":" String[] commandWords \u003d command.split(\"/\");","lastModifiedDate":"2024-02-07"},{"lineNumber":4,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"PDHung1104"},"content":" Deadline newDeadline;","lastModifiedDate":"2024-02-07"},{"lineNumber":6,"author":{"gitId":"PDHung1104"},"content":" String taskName \u003d commandWords[0].substring(9);","lastModifiedDate":"2024-02-07"},{"lineNumber":7,"author":{"gitId":"PDHung1104"},"content":" String by \u003d commandWords[1].substring(3);","lastModifiedDate":"2024-02-07"},{"lineNumber":8,"author":{"gitId":"PDHung1104"},"content":" newDeadline \u003d new Deadline(taskName, by);","lastModifiedDate":"2024-02-07"},{"lineNumber":9,"author":{"gitId":"PDHung1104"},"content":" return newDeadline;","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":11,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":12,"author":{"gitId":"PDHung1104"},"content":" private static Event parseEvent(String command){","lastModifiedDate":"2024-02-07"},{"lineNumber":13,"author":{"gitId":"PDHung1104"},"content":" String[] commandWords \u003d command.split(\"/\");","lastModifiedDate":"2024-02-07"},{"lineNumber":14,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":15,"author":{"gitId":"PDHung1104"},"content":" Event newEvent;","lastModifiedDate":"2024-02-07"},{"lineNumber":16,"author":{"gitId":"PDHung1104"},"content":" String eventName \u003d commandWords[0].substring(6);","lastModifiedDate":"2024-02-07"},{"lineNumber":17,"author":{"gitId":"PDHung1104"},"content":" String from \u003d commandWords[1].substring(5);","lastModifiedDate":"2024-02-07"},{"lineNumber":18,"author":{"gitId":"PDHung1104"},"content":" String to \u003d commandWords[2].substring(3);","lastModifiedDate":"2024-02-07"},{"lineNumber":19,"author":{"gitId":"PDHung1104"},"content":" newEvent \u003d new Event(eventName, from, to);","lastModifiedDate":"2024-02-07"},{"lineNumber":20,"author":{"gitId":"PDHung1104"},"content":" return newEvent;","lastModifiedDate":"2024-02-07"},{"lineNumber":21,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":22,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":23,"author":{"gitId":"PDHung1104"},"content":" private static Todo parseTodo(String command){","lastModifiedDate":"2024-02-07"},{"lineNumber":24,"author":{"gitId":"PDHung1104"},"content":" String[] commandWords \u003d command.split(\" \");","lastModifiedDate":"2024-02-07"},{"lineNumber":25,"author":{"gitId":"PDHung1104"},"content":" return new Todo(commandWords[1]);","lastModifiedDate":"2024-02-07"},{"lineNumber":26,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":27,"author":{"gitId":"PDHung1104"},"content":" public static Task parseCommand(String command){","lastModifiedDate":"2024-02-07"},{"lineNumber":28,"author":{"gitId":"PDHung1104"},"content":" String[] commandWords \u003d command.split(\" \");","lastModifiedDate":"2024-02-07"},{"lineNumber":29,"author":{"gitId":"PDHung1104"},"content":" if (commandWords[0].equals(\"deadline\")){","lastModifiedDate":"2024-02-07"},{"lineNumber":30,"author":{"gitId":"PDHung1104"},"content":" return parseDeadline(command);","lastModifiedDate":"2024-02-07"},{"lineNumber":31,"author":{"gitId":"PDHung1104"},"content":" } else if (commandWords[0].equals(\"event\")){","lastModifiedDate":"2024-02-07"},{"lineNumber":32,"author":{"gitId":"PDHung1104"},"content":" return parseEvent(command);","lastModifiedDate":"2024-02-07"},{"lineNumber":33,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":34,"author":{"gitId":"PDHung1104"},"content":" return parseTodo(command);","lastModifiedDate":"2024-02-07"},{"lineNumber":35,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":36,"author":{"gitId":"PDHung1104"},"content":"}","lastModifiedDate":"2024-02-07"}],"authorContributionMap":{"PDHung1104":36}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"PDHung1104"},"content":"public class Task {","lastModifiedDate":"2024-02-02"},{"lineNumber":2,"author":{"gitId":"PDHung1104"},"content":" //Attributes","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":4,"author":{"gitId":"PDHung1104"},"content":" protected String name;","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"PDHung1104"},"content":" protected boolean isDone;","lastModifiedDate":"2024-02-07"},{"lineNumber":6,"author":{"gitId":"PDHung1104"},"content":" protected static int tasksCount \u003d 0;","lastModifiedDate":"2024-02-07"},{"lineNumber":7,"author":{"gitId":"PDHung1104"},"content":" private static Task[] tasks \u003d new Task[100];","lastModifiedDate":"2024-02-02"},{"lineNumber":8,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":9,"author":{"gitId":"PDHung1104"},"content":" //Constructors","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"PDHung1104"},"content":" Task(String name){","lastModifiedDate":"2024-02-02"},{"lineNumber":11,"author":{"gitId":"PDHung1104"},"content":" this.name \u003d name;","lastModifiedDate":"2024-02-02"},{"lineNumber":12,"author":{"gitId":"PDHung1104"},"content":" isDone \u003d false;","lastModifiedDate":"2024-02-02"},{"lineNumber":13,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":14,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":15,"author":{"gitId":"PDHung1104"},"content":" //Methods","lastModifiedDate":"2024-02-07"},{"lineNumber":16,"author":{"gitId":"PDHung1104"},"content":" public String toString(){","lastModifiedDate":"2024-02-07"},{"lineNumber":17,"author":{"gitId":"PDHung1104"},"content":" return (isDone? \"[X] \" : \"[ ] \") + name;","lastModifiedDate":"2024-02-07"},{"lineNumber":18,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":19,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":20,"author":{"gitId":"PDHung1104"},"content":" public static void listTasks(){","lastModifiedDate":"2024-02-02"},{"lineNumber":21,"author":{"gitId":"PDHung1104"},"content":" System.out.println(Duke.LINE_SEPARATOR);","lastModifiedDate":"2024-02-07"},{"lineNumber":22,"author":{"gitId":"PDHung1104"},"content":" for (int i \u003d 0; i \u003c tasksCount; i++){","lastModifiedDate":"2024-02-02"},{"lineNumber":23,"author":{"gitId":"PDHung1104"},"content":" System.out.print((i + 1) + \".\");","lastModifiedDate":"2024-02-02"},{"lineNumber":24,"author":{"gitId":"PDHung1104"},"content":" System.out.println(tasks[i]);","lastModifiedDate":"2024-02-07"},{"lineNumber":25,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":26,"author":{"gitId":"PDHung1104"},"content":" System.out.println(Duke.LINE_SEPARATOR);","lastModifiedDate":"2024-02-07"},{"lineNumber":27,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":28,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":29,"author":{"gitId":"PDHung1104"},"content":" public static void add(Task task){","lastModifiedDate":"2024-02-07"},{"lineNumber":30,"author":{"gitId":"PDHung1104"},"content":" System.out.println(Duke.LINE_SEPARATOR);","lastModifiedDate":"2024-02-07"},{"lineNumber":31,"author":{"gitId":"PDHung1104"},"content":" System.out.println(\"Got it. I\u0027ve added this task:\");","lastModifiedDate":"2024-02-07"},{"lineNumber":32,"author":{"gitId":"PDHung1104"},"content":" System.out.println(task);","lastModifiedDate":"2024-02-07"},{"lineNumber":33,"author":{"gitId":"PDHung1104"},"content":" tasks[tasksCount] \u003d task;","lastModifiedDate":"2024-02-07"},{"lineNumber":34,"author":{"gitId":"PDHung1104"},"content":" tasksCount++;","lastModifiedDate":"2024-02-02"},{"lineNumber":35,"author":{"gitId":"PDHung1104"},"content":" System.out.println(Duke.LINE_SEPARATOR);","lastModifiedDate":"2024-02-07"},{"lineNumber":36,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":37,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":38,"author":{"gitId":"PDHung1104"},"content":" public static void mark(int index){","lastModifiedDate":"2024-02-07"},{"lineNumber":39,"author":{"gitId":"PDHung1104"},"content":" tasks[index - 1].isDone \u003d true;","lastModifiedDate":"2024-02-02"},{"lineNumber":40,"author":{"gitId":"PDHung1104"},"content":" System.out.println(Duke.LINE_SEPARATOR);","lastModifiedDate":"2024-02-07"},{"lineNumber":41,"author":{"gitId":"PDHung1104"},"content":" System.out.println(\"Nice! I\u0027ve marked this task as done:\");","lastModifiedDate":"2024-02-07"},{"lineNumber":42,"author":{"gitId":"PDHung1104"},"content":" System.out.println(tasks[index - 1]);","lastModifiedDate":"2024-02-07"},{"lineNumber":43,"author":{"gitId":"PDHung1104"},"content":" System.out.println(Duke.LINE_SEPARATOR);","lastModifiedDate":"2024-02-07"},{"lineNumber":44,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":45,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":46,"author":{"gitId":"PDHung1104"},"content":" public static void unmark(int index){","lastModifiedDate":"2024-02-07"},{"lineNumber":47,"author":{"gitId":"PDHung1104"},"content":" tasks[index - 1].isDone \u003d false;","lastModifiedDate":"2024-02-02"},{"lineNumber":48,"author":{"gitId":"PDHung1104"},"content":" System.out.println(Duke.LINE_SEPARATOR);","lastModifiedDate":"2024-02-07"},{"lineNumber":49,"author":{"gitId":"PDHung1104"},"content":" System.out.println(\"OK, I\u0027ve marked this task as not done yet:\");","lastModifiedDate":"2024-02-07"},{"lineNumber":50,"author":{"gitId":"PDHung1104"},"content":" System.out.println(tasks[index - 1]);","lastModifiedDate":"2024-02-07"},{"lineNumber":51,"author":{"gitId":"PDHung1104"},"content":" System.out.println(Duke.LINE_SEPARATOR);","lastModifiedDate":"2024-02-07"},{"lineNumber":52,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":53,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":54,"author":{"gitId":"PDHung1104"},"content":" private static boolean isValidObject(String command){","lastModifiedDate":"2024-02-07"},{"lineNumber":55,"author":{"gitId":"PDHung1104"},"content":" return command.equals(\"deadline\") || command.equals(\"event\")","lastModifiedDate":"2024-02-07"},{"lineNumber":56,"author":{"gitId":"PDHung1104"},"content":" || command.equals(\"todo\");","lastModifiedDate":"2024-02-07"},{"lineNumber":57,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":58,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":59,"author":{"gitId":"PDHung1104"},"content":" public static void responseToCommand(String command){","lastModifiedDate":"2024-02-07"},{"lineNumber":60,"author":{"gitId":"PDHung1104"},"content":" String[] commandWords \u003d command.split(\" \");","lastModifiedDate":"2024-02-07"},{"lineNumber":61,"author":{"gitId":"PDHung1104"},"content":" if (commandWords[0].equals(\"list\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":62,"author":{"gitId":"PDHung1104"},"content":" Task.listTasks();","lastModifiedDate":"2024-02-02"},{"lineNumber":63,"author":{"gitId":"PDHung1104"},"content":" } else if (commandWords[0].equals(\"mark\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":64,"author":{"gitId":"PDHung1104"},"content":" mark(Integer.parseInt(commandWords[1]));","lastModifiedDate":"2024-02-07"},{"lineNumber":65,"author":{"gitId":"PDHung1104"},"content":" } else if (commandWords[0].equals(\"unmark\")){","lastModifiedDate":"2024-02-07"},{"lineNumber":66,"author":{"gitId":"PDHung1104"},"content":" unmark(Integer.parseInt(commandWords[1]));","lastModifiedDate":"2024-02-07"},{"lineNumber":67,"author":{"gitId":"PDHung1104"},"content":" } else {","lastModifiedDate":"2024-02-07"},{"lineNumber":68,"author":{"gitId":"PDHung1104"},"content":" Task newTask;","lastModifiedDate":"2024-02-07"},{"lineNumber":69,"author":{"gitId":"PDHung1104"},"content":" if (isValidObject(commandWords[0])){","lastModifiedDate":"2024-02-07"},{"lineNumber":70,"author":{"gitId":"PDHung1104"},"content":" newTask \u003d Parser.parseCommand(command);","lastModifiedDate":"2024-02-07"},{"lineNumber":71,"author":{"gitId":"PDHung1104"},"content":" add(newTask);","lastModifiedDate":"2024-02-07"},{"lineNumber":72,"author":{"gitId":"PDHung1104"},"content":" } else {","lastModifiedDate":"2024-02-07"},{"lineNumber":73,"author":{"gitId":"PDHung1104"},"content":" System.out.println(\"Invalid!\");","lastModifiedDate":"2024-02-07"},{"lineNumber":74,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":75,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":76,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":77,"author":{"gitId":"PDHung1104"},"content":"}","lastModifiedDate":"2024-02-02"}],"authorContributionMap":{"PDHung1104":77}},{"path":"src/main/java/Todo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"PDHung1104"},"content":"public class Todo extends Task {","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"PDHung1104"},"content":" //Attributes","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":4,"author":{"gitId":"PDHung1104"},"content":" //Constructors","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"PDHung1104"},"content":" public Todo(String description){","lastModifiedDate":"2024-02-07"},{"lineNumber":6,"author":{"gitId":"PDHung1104"},"content":" super(description);","lastModifiedDate":"2024-02-07"},{"lineNumber":7,"author":{"gitId":"PDHung1104"},"content":" isDone \u003d false;","lastModifiedDate":"2024-02-07"},{"lineNumber":8,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":9,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"PDHung1104"},"content":" //Methods","lastModifiedDate":"2024-02-07"},{"lineNumber":11,"author":{"gitId":"PDHung1104"},"content":" @Override","lastModifiedDate":"2024-02-07"},{"lineNumber":12,"author":{"gitId":"PDHung1104"},"content":" public String toString() {","lastModifiedDate":"2024-02-07"},{"lineNumber":13,"author":{"gitId":"PDHung1104"},"content":" return \"[T]\" + super.toString();","lastModifiedDate":"2024-02-07"},{"lineNumber":14,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":15,"author":{"gitId":"PDHung1104"},"content":"}// add code here","lastModifiedDate":"2024-02-07"}],"authorContributionMap":{"PDHung1104":15}}] +[{"path":"src/main/java/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"PDHung1104"},"content":"// add code here","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"PDHung1104"},"content":"public class Deadline extends Task {","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"PDHung1104"},"content":" //Attributes","lastModifiedDate":"2024-02-07"},{"lineNumber":4,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"PDHung1104"},"content":" protected String by;","lastModifiedDate":"2024-02-07"},{"lineNumber":6,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":7,"author":{"gitId":"PDHung1104"},"content":" //Constructors","lastModifiedDate":"2024-02-07"},{"lineNumber":8,"author":{"gitId":"PDHung1104"},"content":" public Deadline (String name, String by) {","lastModifiedDate":"2024-02-07"},{"lineNumber":9,"author":{"gitId":"PDHung1104"},"content":" super(name);","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"PDHung1104"},"content":" this.by \u003d by;","lastModifiedDate":"2024-02-07"},{"lineNumber":11,"author":{"gitId":"PDHung1104"},"content":" this.taskType \u003d TaskType.DEADLINE;","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":13,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":14,"author":{"gitId":"PDHung1104"},"content":" //Methods","lastModifiedDate":"2024-02-07"},{"lineNumber":15,"author":{"gitId":"PDHung1104"},"content":" public String toString () {","lastModifiedDate":"2024-02-07"},{"lineNumber":16,"author":{"gitId":"PDHung1104"},"content":" return \"[D]\" + super.toString() + \"(do by: \" + by + \")\";","lastModifiedDate":"2024-02-07"},{"lineNumber":17,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":18,"author":{"gitId":"PDHung1104"},"content":"}","lastModifiedDate":"2024-02-07"}],"authorContributionMap":{"PDHung1104":18}},{"path":"src/main/java/Duke.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"-"},"content":"public class Duke {","lastModifiedDate":"2019-07-29"},{"lineNumber":2,"author":{"gitId":"-"},"content":" public static void main (String[] args) {","lastModifiedDate":"2019-07-29"},{"lineNumber":3,"author":{"gitId":"PDHung1104"},"content":" UI.welcome();","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"PDHung1104"},"content":" UI.takeResponse();","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"PDHung1104"},"content":" UI.bye();","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"-"},"content":" }","lastModifiedDate":"2019-07-29"},{"lineNumber":7,"author":{"gitId":"-"},"content":"}","lastModifiedDate":"2019-07-29"}],"authorContributionMap":{"PDHung1104":3,"-":4}},{"path":"src/main/java/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"PDHung1104"},"content":"public class Event extends Task {","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"PDHung1104"},"content":" //Attributes","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"PDHung1104"},"content":" protected String from;","lastModifiedDate":"2024-02-07"},{"lineNumber":4,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"PDHung1104"},"content":" protected String to;","lastModifiedDate":"2024-02-07"},{"lineNumber":6,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":7,"author":{"gitId":"PDHung1104"},"content":" //Constructors","lastModifiedDate":"2024-02-07"},{"lineNumber":8,"author":{"gitId":"PDHung1104"},"content":" public Event (String name, String from, String to) {","lastModifiedDate":"2024-02-07"},{"lineNumber":9,"author":{"gitId":"PDHung1104"},"content":" super(name);","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"PDHung1104"},"content":" this.from \u003d from;","lastModifiedDate":"2024-02-07"},{"lineNumber":11,"author":{"gitId":"PDHung1104"},"content":" this.to \u003d to;","lastModifiedDate":"2024-02-07"},{"lineNumber":12,"author":{"gitId":"PDHung1104"},"content":" this.taskType \u003d TaskType.EVENT;","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":14,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":15,"author":{"gitId":"PDHung1104"},"content":" //Methods","lastModifiedDate":"2024-02-07"},{"lineNumber":16,"author":{"gitId":"PDHung1104"},"content":" public String toString () {","lastModifiedDate":"2024-02-07"},{"lineNumber":17,"author":{"gitId":"PDHung1104"},"content":" return \"[E]\" + super.toString() + \"(from: \" + from + \" \" + \"to: \" + to + \")\";","lastModifiedDate":"2024-02-07"},{"lineNumber":18,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":19,"author":{"gitId":"PDHung1104"},"content":"}","lastModifiedDate":"2024-02-07"}],"authorContributionMap":{"PDHung1104":19}},{"path":"src/main/java/Invalid.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"PDHung1104"},"content":"public class Invalid extends Task{","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"PDHung1104"},"content":" public Invalid(String name) {","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"PDHung1104"},"content":" super(name);","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"PDHung1104"},"content":" this.taskType \u003d TaskType.INVALID;","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"PDHung1104"},"content":" //return the error message","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"PDHung1104"},"content":" public String toString(){","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"PDHung1104"},"content":" return name;","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"PDHung1104"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"PDHung1104":11}},{"path":"src/main/java/Parser.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"PDHung1104"},"content":"public class Parser {","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"PDHung1104"},"content":" private static Deadline parseDeadline (String command) {","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"PDHung1104"},"content":" String[] commandWords \u003d command.split(\"/\");","lastModifiedDate":"2024-02-07"},{"lineNumber":4,"author":{"gitId":"PDHung1104"},"content":" Deadline newDeadline;","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"PDHung1104"},"content":" String taskName \u003d commandWords[0].substring(9);","lastModifiedDate":"2024-02-07"},{"lineNumber":6,"author":{"gitId":"PDHung1104"},"content":" String by \u003d commandWords[1].substring(3);","lastModifiedDate":"2024-02-07"},{"lineNumber":7,"author":{"gitId":"PDHung1104"},"content":" newDeadline \u003d new Deadline(taskName, by);","lastModifiedDate":"2024-02-07"},{"lineNumber":8,"author":{"gitId":"PDHung1104"},"content":" return newDeadline;","lastModifiedDate":"2024-02-07"},{"lineNumber":9,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":11,"author":{"gitId":"PDHung1104"},"content":" private static Event parseEvent (String command) {","lastModifiedDate":"2024-02-07"},{"lineNumber":12,"author":{"gitId":"PDHung1104"},"content":" String[] commandWords \u003d command.split(\"/\");","lastModifiedDate":"2024-02-07"},{"lineNumber":13,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":14,"author":{"gitId":"PDHung1104"},"content":" Event newEvent;","lastModifiedDate":"2024-02-07"},{"lineNumber":15,"author":{"gitId":"PDHung1104"},"content":" String eventName \u003d commandWords[0].substring(6);","lastModifiedDate":"2024-02-07"},{"lineNumber":16,"author":{"gitId":"PDHung1104"},"content":" String from \u003d commandWords[1].substring(5);","lastModifiedDate":"2024-02-07"},{"lineNumber":17,"author":{"gitId":"PDHung1104"},"content":" String to \u003d commandWords[2].substring(3);","lastModifiedDate":"2024-02-07"},{"lineNumber":18,"author":{"gitId":"PDHung1104"},"content":" newEvent \u003d new Event(eventName, from, to);","lastModifiedDate":"2024-02-07"},{"lineNumber":19,"author":{"gitId":"PDHung1104"},"content":" return newEvent;","lastModifiedDate":"2024-02-07"},{"lineNumber":20,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":21,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":22,"author":{"gitId":"PDHung1104"},"content":" private static Todo parseTodo (String command) {","lastModifiedDate":"2024-02-07"},{"lineNumber":23,"author":{"gitId":"PDHung1104"},"content":" String[] commandWords \u003d command.split(\" \");","lastModifiedDate":"2024-02-07"},{"lineNumber":24,"author":{"gitId":"PDHung1104"},"content":" return new Todo(commandWords[1]);","lastModifiedDate":"2024-02-07"},{"lineNumber":25,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":26,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"PDHung1104"},"content":" public static Task parseCommand (String command) {","lastModifiedDate":"2024-02-07"},{"lineNumber":28,"author":{"gitId":"PDHung1104"},"content":" String[] commandWords \u003d command.split(\" \");","lastModifiedDate":"2024-02-07"},{"lineNumber":29,"author":{"gitId":"PDHung1104"},"content":" if (commandWords[0].equals(\"deadline\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":30,"author":{"gitId":"PDHung1104"},"content":" return parseDeadline(command);","lastModifiedDate":"2024-02-07"},{"lineNumber":31,"author":{"gitId":"PDHung1104"},"content":" } else if (commandWords[0].equals(\"event\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":32,"author":{"gitId":"PDHung1104"},"content":" return parseEvent(command);","lastModifiedDate":"2024-02-07"},{"lineNumber":33,"author":{"gitId":"PDHung1104"},"content":" } else if (commandWords[0].equals(\"todo\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"PDHung1104"},"content":" return parseTodo(command);","lastModifiedDate":"2024-02-07"},{"lineNumber":35,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":36,"author":{"gitId":"PDHung1104"},"content":" return new Invalid(\"INVALID COMMAND\");","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"PDHung1104"},"content":"}","lastModifiedDate":"2024-02-07"}],"authorContributionMap":{"PDHung1104":38}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"PDHung1104"},"content":"import java.util.ArrayList;","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"PDHung1104"},"content":"public class Task {","lastModifiedDate":"2024-02-02"},{"lineNumber":4,"author":{"gitId":"PDHung1104"},"content":" //Attributes","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"PDHung1104"},"content":" protected TaskType taskType;","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"PDHung1104"},"content":" protected String name;","lastModifiedDate":"2024-02-07"},{"lineNumber":7,"author":{"gitId":"PDHung1104"},"content":" protected boolean isDone;","lastModifiedDate":"2024-02-07"},{"lineNumber":8,"author":{"gitId":"PDHung1104"},"content":" private static ArrayList\u003cTask\u003e tasks \u003d new ArrayList\u003cTask\u003e();","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":10,"author":{"gitId":"PDHung1104"},"content":" //Constructors","lastModifiedDate":"2024-02-07"},{"lineNumber":11,"author":{"gitId":"PDHung1104"},"content":" Task (String name) {","lastModifiedDate":"2024-02-02"},{"lineNumber":12,"author":{"gitId":"PDHung1104"},"content":" this.name \u003d name;","lastModifiedDate":"2024-02-02"},{"lineNumber":13,"author":{"gitId":"PDHung1104"},"content":" isDone \u003d false;","lastModifiedDate":"2024-02-02"},{"lineNumber":14,"author":{"gitId":"PDHung1104"},"content":" taskType \u003d TaskType.TASK;","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":16,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":17,"author":{"gitId":"PDHung1104"},"content":" public TaskType getTaskType(){","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"PDHung1104"},"content":" return taskType;","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"PDHung1104"},"content":" //Methods","lastModifiedDate":"2024-02-07"},{"lineNumber":21,"author":{"gitId":"PDHung1104"},"content":" public String toString () {","lastModifiedDate":"2024-02-07"},{"lineNumber":22,"author":{"gitId":"PDHung1104"},"content":" return (isDone ? \"[X] \" : \"[ ] \") + name;","lastModifiedDate":"2024-02-07"},{"lineNumber":23,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":24,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":25,"author":{"gitId":"PDHung1104"},"content":" public static void listTasks () {","lastModifiedDate":"2024-02-02"},{"lineNumber":26,"author":{"gitId":"PDHung1104"},"content":" System.out.println(UI.LINE_SEPARATOR);","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"PDHung1104"},"content":" for (int i \u003d 0; i \u003c tasks.size(); i++) {","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"PDHung1104"},"content":" System.out.print((i + 1) + \".\");","lastModifiedDate":"2024-02-02"},{"lineNumber":29,"author":{"gitId":"PDHung1104"},"content":" System.out.println(tasks.get(i));","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":31,"author":{"gitId":"PDHung1104"},"content":" System.out.println(UI.LINE_SEPARATOR);","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":33,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":34,"author":{"gitId":"PDHung1104"},"content":" public static void addTask (Task task) {","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"PDHung1104"},"content":" System.out.println(UI.LINE_SEPARATOR);","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"PDHung1104"},"content":" switch (task.getTaskType()){","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"PDHung1104"},"content":" case DEADLINE:","lastModifiedDate":"2024-02-09"},{"lineNumber":39,"author":{"gitId":"PDHung1104"},"content":" case EVENT:","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"PDHung1104"},"content":" case TODO:","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"PDHung1104"},"content":" System.out.println(\"Got it. I\u0027ve added this task:\");","lastModifiedDate":"2024-02-07"},{"lineNumber":42,"author":{"gitId":"PDHung1104"},"content":" tasks.add(task);","lastModifiedDate":"2024-02-09"},{"lineNumber":43,"author":{"gitId":"PDHung1104"},"content":" break;","lastModifiedDate":"2024-02-09"},{"lineNumber":44,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":45,"author":{"gitId":"PDHung1104"},"content":" System.out.println(task);","lastModifiedDate":"2024-02-07"},{"lineNumber":46,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":47,"author":{"gitId":"PDHung1104"},"content":" System.out.println(UI.LINE_SEPARATOR);","lastModifiedDate":"2024-02-09"},{"lineNumber":48,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":49,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":50,"author":{"gitId":"PDHung1104"},"content":" public static void mark (int index) {","lastModifiedDate":"2024-02-07"},{"lineNumber":51,"author":{"gitId":"PDHung1104"},"content":" tasks.get(index - 1).isDone \u003d true;","lastModifiedDate":"2024-02-09"},{"lineNumber":52,"author":{"gitId":"PDHung1104"},"content":" System.out.println(UI.LINE_SEPARATOR);","lastModifiedDate":"2024-02-09"},{"lineNumber":53,"author":{"gitId":"PDHung1104"},"content":" System.out.println(\"Nice! I\u0027ve marked this task as done:\");","lastModifiedDate":"2024-02-07"},{"lineNumber":54,"author":{"gitId":"PDHung1104"},"content":" System.out.println(tasks.get(index - 1));","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"PDHung1104"},"content":" System.out.println(UI.LINE_SEPARATOR);","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":57,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":58,"author":{"gitId":"PDHung1104"},"content":" public static void unmark (int index) {","lastModifiedDate":"2024-02-07"},{"lineNumber":59,"author":{"gitId":"PDHung1104"},"content":" tasks.get(index - 1).isDone \u003d false;","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"PDHung1104"},"content":" System.out.println(UI.LINE_SEPARATOR);","lastModifiedDate":"2024-02-09"},{"lineNumber":61,"author":{"gitId":"PDHung1104"},"content":" System.out.println(\"OK, I\u0027ve marked this task as not done yet:\");","lastModifiedDate":"2024-02-07"},{"lineNumber":62,"author":{"gitId":"PDHung1104"},"content":" System.out.println(tasks.get(index - 1));","lastModifiedDate":"2024-02-09"},{"lineNumber":63,"author":{"gitId":"PDHung1104"},"content":" System.out.println(UI.LINE_SEPARATOR);","lastModifiedDate":"2024-02-09"},{"lineNumber":64,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":65,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":66,"author":{"gitId":"PDHung1104"},"content":" private static boolean isValidObject (String command) {","lastModifiedDate":"2024-02-07"},{"lineNumber":67,"author":{"gitId":"PDHung1104"},"content":" return command.equals(\"deadline\") || command.equals(\"event\")","lastModifiedDate":"2024-02-07"},{"lineNumber":68,"author":{"gitId":"PDHung1104"},"content":" || command.equals(\"todo\");","lastModifiedDate":"2024-02-07"},{"lineNumber":69,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":70,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":71,"author":{"gitId":"PDHung1104"},"content":" public static void responseToCommand (String command) {","lastModifiedDate":"2024-02-07"},{"lineNumber":72,"author":{"gitId":"PDHung1104"},"content":" String[] commandWords \u003d command.split(\" \");","lastModifiedDate":"2024-02-07"},{"lineNumber":73,"author":{"gitId":"PDHung1104"},"content":" if (commandWords[0].equals(\"list\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":74,"author":{"gitId":"PDHung1104"},"content":" Task.listTasks();","lastModifiedDate":"2024-02-02"},{"lineNumber":75,"author":{"gitId":"PDHung1104"},"content":" } else if (commandWords[0].equals(\"mark\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":76,"author":{"gitId":"PDHung1104"},"content":" mark(Integer.parseInt(commandWords[1]));","lastModifiedDate":"2024-02-07"},{"lineNumber":77,"author":{"gitId":"PDHung1104"},"content":" } else if (commandWords[0].equals(\"unmark\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":78,"author":{"gitId":"PDHung1104"},"content":" unmark(Integer.parseInt(commandWords[1]));","lastModifiedDate":"2024-02-07"},{"lineNumber":79,"author":{"gitId":"PDHung1104"},"content":" } else {","lastModifiedDate":"2024-02-07"},{"lineNumber":80,"author":{"gitId":"PDHung1104"},"content":" Task newTask \u003d Parser.parseCommand(command);","lastModifiedDate":"2024-02-09"},{"lineNumber":81,"author":{"gitId":"PDHung1104"},"content":" addTask(newTask);","lastModifiedDate":"2024-02-09"},{"lineNumber":82,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":83,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":84,"author":{"gitId":"PDHung1104"},"content":"}","lastModifiedDate":"2024-02-02"}],"authorContributionMap":{"PDHung1104":84}},{"path":"src/main/java/TaskType.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"PDHung1104"},"content":"public enum TaskType {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"PDHung1104"},"content":" TASK,","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"PDHung1104"},"content":" DEADLINE,","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"PDHung1104"},"content":" TODO,","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"PDHung1104"},"content":" EVENT,","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"PDHung1104"},"content":" INVALID","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"PDHung1104"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"PDHung1104":7}},{"path":"src/main/java/Todo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"PDHung1104"},"content":"public class Todo extends Task {","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"PDHung1104"},"content":" //Attributes","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":4,"author":{"gitId":"PDHung1104"},"content":" //Constructors","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"PDHung1104"},"content":" public Todo (String description) {","lastModifiedDate":"2024-02-07"},{"lineNumber":6,"author":{"gitId":"PDHung1104"},"content":" super(description);","lastModifiedDate":"2024-02-07"},{"lineNumber":7,"author":{"gitId":"PDHung1104"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"PDHung1104"},"content":" this.taskType \u003d TaskType.TODO;","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":11,"author":{"gitId":"PDHung1104"},"content":" //Methods","lastModifiedDate":"2024-02-07"},{"lineNumber":12,"author":{"gitId":"PDHung1104"},"content":" @Override","lastModifiedDate":"2024-02-07"},{"lineNumber":13,"author":{"gitId":"PDHung1104"},"content":" public String toString () {","lastModifiedDate":"2024-02-07"},{"lineNumber":14,"author":{"gitId":"PDHung1104"},"content":" return \"[T]\" + super.toString();","lastModifiedDate":"2024-02-07"},{"lineNumber":15,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":16,"author":{"gitId":"PDHung1104"},"content":"}// add code here","lastModifiedDate":"2024-02-07"}],"authorContributionMap":{"PDHung1104":16}},{"path":"src/main/java/UI.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"PDHung1104"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"PDHung1104"},"content":"public class UI {","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"PDHung1104"},"content":" public static final String LINE_SEPARATOR \u003d \"--------------------------------------\";","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"PDHung1104"},"content":" public static void welcome(){","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"PDHung1104"},"content":" String name \u003d \"Stella\";","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"PDHung1104"},"content":" System.out.println(\"Hello! I\u0027m \" + name);","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"PDHung1104"},"content":" System.out.println(\"What can I do for you?\");","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"PDHung1104"},"content":" System.out.println(UI.LINE_SEPARATOR);","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"PDHung1104"},"content":" public static void takeResponse(){","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"PDHung1104"},"content":" Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"PDHung1104"},"content":" String line \u003d in.nextLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"PDHung1104"},"content":" while (!line.equals(\"bye\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"PDHung1104"},"content":" Task.responseToCommand(line);","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"PDHung1104"},"content":" line \u003d in.nextLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"PDHung1104"},"content":" public static void bye(){","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"PDHung1104"},"content":" System.out.println(UI.LINE_SEPARATOR);","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"PDHung1104"},"content":" System.out.println(\"Bye. Hope to see you again soon!\");","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"PDHung1104"},"content":" System.out.println(UI.LINE_SEPARATOR);","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"PDHung1104"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"PDHung1104"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"PDHung1104"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"PDHung1104":27}}] diff --git a/PDHung1104_ip_master/commits.json b/PDHung1104_ip_master/commits.json index e1b79b9c..72d05fa6 100644 --- a/PDHung1104_ip_master/commits.json +++ b/PDHung1104_ip_master/commits.json @@ -1 +1 @@ -{"authorDailyContributionsMap":{"PDHung1104":[{"date":"2024-01-29","commitResults":[{"hash":"2a9ab218fbdd0ba1b362957ee9a14d9cb3f4f1fb","isMergeCommit":false,"messageTitle":"Rename, Greet, Exit","messageBody":"","tags":["Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":4,"deletions":6}}}]},{"date":"2024-02-01","commitResults":[{"hash":"95bea4b57f53f89cbcabcdc2b9a9fd394346ea50","isMergeCommit":false,"messageTitle":"Echo","messageBody":"","tags":["Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":13,"deletions":0}}},{"hash":"92ed5459d93b86fca13496fb2233d6dc1baada52","isMergeCommit":false,"messageTitle":"Add, List","messageBody":"","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":17,"deletions":5}}}]},{"date":"2024-02-02","commitResults":[{"hash":"480e542ab8c7f044e72799b24f61749498452c04","isMergeCommit":false,"messageTitle":"Mark as done","messageBody":"","tags":["Level-3"],"fileTypesAndContributionMap":{"java":{"insertions":63,"deletions":16}}}]},{"date":"2024-02-07","commitResults":[{"hash":"e7d1c700168824d598d70451cfd3e4175812b2a9","isMergeCommit":false,"messageTitle":"Add Parser class to classify task types","messageBody":"","tags":["Level-4","Leve-4"],"fileTypesAndContributionMap":{"java":{"insertions":147,"deletions":44}}}]}]},"authorFileTypeContributionMap":{"PDHung1104":{"java":179,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"PDHung1104":1954.2875},"authorDisplayNameMap":{"PDHung1104":"CS2113-W14-2 PHAN..HUNG"}} +{"authorDailyContributionsMap":{"PDHung1104":[{"date":"2024-01-29","commitResults":[{"hash":"2a9ab218fbdd0ba1b362957ee9a14d9cb3f4f1fb","isMergeCommit":false,"messageTitle":"Rename, Greet, Exit","messageBody":"","tags":["Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":4,"deletions":6}}}]},{"date":"2024-02-01","commitResults":[{"hash":"95bea4b57f53f89cbcabcdc2b9a9fd394346ea50","isMergeCommit":false,"messageTitle":"Echo","messageBody":"","tags":["Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":13,"deletions":0}}},{"hash":"92ed5459d93b86fca13496fb2233d6dc1baada52","isMergeCommit":false,"messageTitle":"Add, List","messageBody":"","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":17,"deletions":5}}}]},{"date":"2024-02-02","commitResults":[{"hash":"480e542ab8c7f044e72799b24f61749498452c04","isMergeCommit":false,"messageTitle":"Mark as done","messageBody":"","tags":["Level-3"],"fileTypesAndContributionMap":{"java":{"insertions":63,"deletions":16}}}]},{"date":"2024-02-07","commitResults":[{"hash":"e7d1c700168824d598d70451cfd3e4175812b2a9","isMergeCommit":false,"messageTitle":"Add Parser class to classify task types","messageBody":"","tags":["Level-4","Leve-4"],"fileTypesAndContributionMap":{"java":{"insertions":147,"deletions":44}}}]},{"date":"2024-02-09","commitResults":[{"hash":"f061cffbac0aa1562154f332e66217001a9ead11","isMergeCommit":false,"messageTitle":"- Implement UI class to handle greetings and user\u0027s input interface - Implement enumerator TaskType to differentiate between Deadline, Todo, Event and Invalid task types. - Refactor to have code blocks with same level of abstraction","messageBody":"","tags":["A-CodeQuality"],"fileTypesAndContributionMap":{"java":{"insertions":116,"deletions":72}}}]}]},"authorFileTypeContributionMap":{"PDHung1104":{"java":223,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"PDHung1104":3085.936},"authorDisplayNameMap":{"PDHung1104":"CS2113-W14-2 PHAN..HUNG"}} diff --git a/Praneet-25_ip_master/authorship.json b/Praneet-25_ip_master/authorship.json index 05eaadd5..b16008aa 100644 --- a/Praneet-25_ip_master/authorship.json +++ b/Praneet-25_ip_master/authorship.json @@ -1 +1 @@ -[{"path":"src/main/java/Duke.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"Praneet-25"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"Praneet-25"},"content":"import java.util.Arrays;","lastModifiedDate":"2024-02-08"},{"lineNumber":3,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"-"},"content":"public class Duke {","lastModifiedDate":"2019-07-29"},{"lineNumber":5,"author":{"gitId":"-"},"content":" public static void main(String[] args) {","lastModifiedDate":"2019-07-29"},{"lineNumber":6,"author":{"gitId":"-"},"content":" String logo \u003d \" ____ _ \\n\"","lastModifiedDate":"2019-07-29"},{"lineNumber":7,"author":{"gitId":"-"},"content":" + \"| _ \\\\ _ _| | _____ \\n\"","lastModifiedDate":"2019-07-29"},{"lineNumber":8,"author":{"gitId":"-"},"content":" + \"| | | | | | | |/ / _ \\\\\\n\"","lastModifiedDate":"2019-07-29"},{"lineNumber":9,"author":{"gitId":"-"},"content":" + \"| |_| | |_| | \u003c __/\\n\"","lastModifiedDate":"2019-07-29"},{"lineNumber":10,"author":{"gitId":"-"},"content":" + \"|____/ \\\\__,_|_|\\\\_\\\\___|\\n\";","lastModifiedDate":"2019-07-29"},{"lineNumber":11,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":12,"author":{"gitId":"Praneet-25"},"content":" Task[] listOfItems \u003d new Task[100];","lastModifiedDate":"2024-02-08"},{"lineNumber":13,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":14,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-08"},{"lineNumber":15,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"Hello! I\u0027m Brennan!\");","lastModifiedDate":"2024-02-08"},{"lineNumber":16,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"What can I do for you?\\n\");","lastModifiedDate":"2024-02-08"},{"lineNumber":17,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":18,"author":{"gitId":"Praneet-25"},"content":" //String that stores the input entered by the user","lastModifiedDate":"2024-02-08"},{"lineNumber":19,"author":{"gitId":"Praneet-25"},"content":" String input;","lastModifiedDate":"2024-02-08"},{"lineNumber":20,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":21,"author":{"gitId":"Praneet-25"},"content":" //variable stores the number of tasks being added","lastModifiedDate":"2024-02-08"},{"lineNumber":22,"author":{"gitId":"Praneet-25"},"content":" int sizeOfAddedItems \u003d 0;","lastModifiedDate":"2024-02-08"},{"lineNumber":23,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":24,"author":{"gitId":"Praneet-25"},"content":" Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-08"},{"lineNumber":25,"author":{"gitId":"Praneet-25"},"content":" while (true) {","lastModifiedDate":"2024-02-08"},{"lineNumber":26,"author":{"gitId":"Praneet-25"},"content":" input \u003d in.nextLine();","lastModifiedDate":"2024-02-08"},{"lineNumber":27,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":28,"author":{"gitId":"Praneet-25"},"content":" if (input.equals(\"bye\")) {","lastModifiedDate":"2024-02-08"},{"lineNumber":29,"author":{"gitId":"Praneet-25"},"content":" break;","lastModifiedDate":"2024-02-08"},{"lineNumber":30,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":31,"author":{"gitId":"Praneet-25"},"content":" } else if (input.equals(\"list\")) {","lastModifiedDate":"2024-02-08"},{"lineNumber":32,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"Here are the tasks in your list: \");","lastModifiedDate":"2024-02-08"},{"lineNumber":33,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-08"},{"lineNumber":34,"author":{"gitId":"Praneet-25"},"content":" for (int i \u003d 0; i \u003c sizeOfAddedItems; i++) {","lastModifiedDate":"2024-02-08"},{"lineNumber":35,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":36,"author":{"gitId":"Praneet-25"},"content":" System.out.println((i + 1) + \". \" + \"[\" + listOfItems[i].getStatusIcon() + \"]\" + listOfItems[i].description);","lastModifiedDate":"2024-02-08"},{"lineNumber":37,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":38,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-08"},{"lineNumber":39,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":40,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":41,"author":{"gitId":"Praneet-25"},"content":" else if (Arrays.asList(input.split( \" \")).contains(\"mark\")) {","lastModifiedDate":"2024-02-08"},{"lineNumber":42,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":43,"author":{"gitId":"Praneet-25"},"content":" //Finding the index of the task that the user wants to mark","lastModifiedDate":"2024-02-08"},{"lineNumber":44,"author":{"gitId":"Praneet-25"},"content":" String[] splitInput \u003d input.split(\" \");","lastModifiedDate":"2024-02-08"},{"lineNumber":45,"author":{"gitId":"Praneet-25"},"content":" int indexTask \u003d Integer.parseInt(splitInput[1]);","lastModifiedDate":"2024-02-08"},{"lineNumber":46,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":47,"author":{"gitId":"Praneet-25"},"content":" listOfItems[indexTask - 1].markAsCompleted();","lastModifiedDate":"2024-02-08"},{"lineNumber":48,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":49,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-08"},{"lineNumber":50,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"Nice! I\u0027ve marked this task as done:\");","lastModifiedDate":"2024-02-08"},{"lineNumber":51,"author":{"gitId":"Praneet-25"},"content":" System.out.println((indexTask) + \". \" + \"[\" + listOfItems[indexTask-1].getStatusIcon() + \"]\" + listOfItems[indexTask - 1].description);","lastModifiedDate":"2024-02-08"},{"lineNumber":52,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-08"},{"lineNumber":53,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":54,"author":{"gitId":"Praneet-25"},"content":" } else if (Arrays.asList(input.split( \" \")).contains(\"unmark\")) {","lastModifiedDate":"2024-02-08"},{"lineNumber":55,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":56,"author":{"gitId":"Praneet-25"},"content":" //Finding the index of the task that the user wants to mark","lastModifiedDate":"2024-02-08"},{"lineNumber":57,"author":{"gitId":"Praneet-25"},"content":" String[] splitInput \u003d input.split(\" \");","lastModifiedDate":"2024-02-08"},{"lineNumber":58,"author":{"gitId":"Praneet-25"},"content":" int indexTask \u003d Integer.parseInt(splitInput[1]);","lastModifiedDate":"2024-02-08"},{"lineNumber":59,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":60,"author":{"gitId":"Praneet-25"},"content":" listOfItems[indexTask - 1].markAsNotCompleted();","lastModifiedDate":"2024-02-08"},{"lineNumber":61,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":62,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-08"},{"lineNumber":63,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\" OK, I\u0027ve marked this task as not done yet:\");","lastModifiedDate":"2024-02-08"},{"lineNumber":64,"author":{"gitId":"Praneet-25"},"content":" System.out.println((indexTask) + \". \" + \"[\" + listOfItems[indexTask-1].getStatusIcon() + \"]\" + listOfItems[indexTask - 1].description);","lastModifiedDate":"2024-02-08"},{"lineNumber":65,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-08"},{"lineNumber":66,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":67,"author":{"gitId":"Praneet-25"},"content":" } else {","lastModifiedDate":"2024-02-08"},{"lineNumber":68,"author":{"gitId":"Praneet-25"},"content":" listOfItems[sizeOfAddedItems] \u003d new Task(input);","lastModifiedDate":"2024-02-08"},{"lineNumber":69,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-08"},{"lineNumber":70,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\" added: \" + input);","lastModifiedDate":"2024-02-08"},{"lineNumber":71,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-08"},{"lineNumber":72,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":73,"author":{"gitId":"Praneet-25"},"content":" sizeOfAddedItems++;","lastModifiedDate":"2024-02-08"},{"lineNumber":74,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":75,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":76,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":77,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":78,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-08"},{"lineNumber":79,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"Bye. Hope to see you again soon!\");","lastModifiedDate":"2024-02-08"},{"lineNumber":80,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-08"},{"lineNumber":81,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":82,"author":{"gitId":"-"},"content":" }","lastModifiedDate":"2019-07-29"},{"lineNumber":83,"author":{"gitId":"-"},"content":"}","lastModifiedDate":"2019-07-29"}],"authorContributionMap":{"Praneet-25":74,"-":9}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"Praneet-25"},"content":"public class Task {","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"Praneet-25"},"content":" protected String description;","lastModifiedDate":"2024-02-08"},{"lineNumber":3,"author":{"gitId":"Praneet-25"},"content":" protected boolean isDone;","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":5,"author":{"gitId":"Praneet-25"},"content":" public Task(String description) {","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"Praneet-25"},"content":" this.description \u003d description;","lastModifiedDate":"2024-02-08"},{"lineNumber":7,"author":{"gitId":"Praneet-25"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-08"},{"lineNumber":8,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":9,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":10,"author":{"gitId":"Praneet-25"},"content":" public String getStatusIcon() {","lastModifiedDate":"2024-02-08"},{"lineNumber":11,"author":{"gitId":"Praneet-25"},"content":" return (isDone ? \"X\" : \" \"); // mark done task with X","lastModifiedDate":"2024-02-08"},{"lineNumber":12,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":13,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":14,"author":{"gitId":"Praneet-25"},"content":" public void markAsCompleted() {","lastModifiedDate":"2024-02-08"},{"lineNumber":15,"author":{"gitId":"Praneet-25"},"content":" isDone \u003d true;","lastModifiedDate":"2024-02-08"},{"lineNumber":16,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":17,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":18,"author":{"gitId":"Praneet-25"},"content":" public void markAsNotCompleted() {","lastModifiedDate":"2024-02-08"},{"lineNumber":19,"author":{"gitId":"Praneet-25"},"content":" isDone \u003d false;","lastModifiedDate":"2024-02-08"},{"lineNumber":20,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":21,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":22,"author":{"gitId":"Praneet-25"},"content":"}","lastModifiedDate":"2024-02-08"}],"authorContributionMap":{"Praneet-25":22}}] +[{"path":"src/main/java/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"Praneet-25"},"content":"public class Deadline extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"Praneet-25"},"content":" protected String dateOfDeadline;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"Praneet-25"},"content":" public Deadline(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"Praneet-25"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"Praneet-25"},"content":" typeOfTask \u003d \"D\";","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"Praneet-25"},"content":" int dividerIndex \u003d description.indexOf(\"/\");","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"Praneet-25"},"content":" if (dividerIndex \u003d\u003d -1) {","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"Praneet-25"},"content":" this.description \u003d description;","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"Praneet-25"},"content":" setDateOfDeadline(null);","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"Praneet-25"},"content":" else {","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"Praneet-25"},"content":" String endDate \u003d description.substring(dividerIndex + 4);","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"Praneet-25"},"content":" String descriptionWithoutDate \u003d description.substring(0, (dividerIndex - 1)).replace(\"deadline\", \"\");","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"Praneet-25"},"content":" setDateOfDeadline(endDate);","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"Praneet-25"},"content":" this.description \u003d descriptionWithoutDate + \" (by: \" + getDateOfDeadline() + \")\";","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"Praneet-25"},"content":" public String getDateOfDeadline() {","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"Praneet-25"},"content":" return dateOfDeadline;","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"Praneet-25"},"content":" public void setDateOfDeadline(String dateOfDeadline) {","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"Praneet-25"},"content":" this.dateOfDeadline \u003d dateOfDeadline;","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"Praneet-25"},"content":"}","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"Praneet-25":31}},{"path":"src/main/java/Duke.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"Praneet-25"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"Praneet-25"},"content":"import java.util.Arrays;","lastModifiedDate":"2024-02-08"},{"lineNumber":3,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"-"},"content":"public class Duke {","lastModifiedDate":"2019-07-29"},{"lineNumber":5,"author":{"gitId":"-"},"content":" public static void main(String[] args) {","lastModifiedDate":"2019-07-29"},{"lineNumber":6,"author":{"gitId":"-"},"content":" String logo \u003d \" ____ _ \\n\"","lastModifiedDate":"2019-07-29"},{"lineNumber":7,"author":{"gitId":"-"},"content":" + \"| _ \\\\ _ _| | _____ \\n\"","lastModifiedDate":"2019-07-29"},{"lineNumber":8,"author":{"gitId":"-"},"content":" + \"| | | | | | | |/ / _ \\\\\\n\"","lastModifiedDate":"2019-07-29"},{"lineNumber":9,"author":{"gitId":"-"},"content":" + \"| |_| | |_| | \u003c __/\\n\"","lastModifiedDate":"2019-07-29"},{"lineNumber":10,"author":{"gitId":"-"},"content":" + \"|____/ \\\\__,_|_|\\\\_\\\\___|\\n\";","lastModifiedDate":"2019-07-29"},{"lineNumber":11,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":12,"author":{"gitId":"Praneet-25"},"content":" Task[] listOfItems \u003d new Task[100];","lastModifiedDate":"2024-02-08"},{"lineNumber":13,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":14,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-08"},{"lineNumber":15,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"Hello! I\u0027m Brennan!\");","lastModifiedDate":"2024-02-08"},{"lineNumber":16,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"What can I do for you?\\n\");","lastModifiedDate":"2024-02-08"},{"lineNumber":17,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":18,"author":{"gitId":"Praneet-25"},"content":" //String that stores the input entered by the user","lastModifiedDate":"2024-02-08"},{"lineNumber":19,"author":{"gitId":"Praneet-25"},"content":" String input;","lastModifiedDate":"2024-02-08"},{"lineNumber":20,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":21,"author":{"gitId":"Praneet-25"},"content":" //variable stores the number of tasks being added","lastModifiedDate":"2024-02-08"},{"lineNumber":22,"author":{"gitId":"Praneet-25"},"content":" int sizeOfAddedItems \u003d 0;","lastModifiedDate":"2024-02-08"},{"lineNumber":23,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":24,"author":{"gitId":"Praneet-25"},"content":" Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-08"},{"lineNumber":25,"author":{"gitId":"Praneet-25"},"content":" while (true) {","lastModifiedDate":"2024-02-08"},{"lineNumber":26,"author":{"gitId":"Praneet-25"},"content":" input \u003d in.nextLine();","lastModifiedDate":"2024-02-08"},{"lineNumber":27,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":28,"author":{"gitId":"Praneet-25"},"content":" if (input.equals(\"bye\")) {","lastModifiedDate":"2024-02-08"},{"lineNumber":29,"author":{"gitId":"Praneet-25"},"content":" break;","lastModifiedDate":"2024-02-08"},{"lineNumber":30,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":31,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"Praneet-25"},"content":" else if (input.equals(\"list\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"Here are the tasks in your list: \");","lastModifiedDate":"2024-02-08"},{"lineNumber":36,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-08"},{"lineNumber":37,"author":{"gitId":"Praneet-25"},"content":" for (int i \u003d 0; i \u003c sizeOfAddedItems; i++) {","lastModifiedDate":"2024-02-08"},{"lineNumber":38,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":39,"author":{"gitId":"Praneet-25"},"content":" System.out.println((i + 1) + \". \" + \" \"+ \"[\" + listOfItems[i].typeOfTask + \"]\" + \"[\" + listOfItems[i].getStatusIcon() + \"]\" + listOfItems[i].description);","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":41,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-08"},{"lineNumber":42,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":43,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":44,"author":{"gitId":"Praneet-25"},"content":" else if (Arrays.asList(input.split( \" \")).contains(\"mark\")) {","lastModifiedDate":"2024-02-08"},{"lineNumber":45,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":46,"author":{"gitId":"Praneet-25"},"content":" //Finding the index of the task that the user wants to mark","lastModifiedDate":"2024-02-08"},{"lineNumber":47,"author":{"gitId":"Praneet-25"},"content":" String[] splitInput \u003d input.split(\" \");","lastModifiedDate":"2024-02-08"},{"lineNumber":48,"author":{"gitId":"Praneet-25"},"content":" int indexTask \u003d Integer.parseInt(splitInput[1]);","lastModifiedDate":"2024-02-08"},{"lineNumber":49,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":50,"author":{"gitId":"Praneet-25"},"content":" listOfItems[indexTask - 1].markAsCompleted();","lastModifiedDate":"2024-02-08"},{"lineNumber":51,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":52,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-08"},{"lineNumber":53,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"Nice! I\u0027ve marked this task as done:\");","lastModifiedDate":"2024-02-08"},{"lineNumber":54,"author":{"gitId":"Praneet-25"},"content":" System.out.println((indexTask) + \". \" + \"[\" + listOfItems[indexTask-1].getStatusIcon() + \"]\" + listOfItems[indexTask - 1].description);","lastModifiedDate":"2024-02-08"},{"lineNumber":55,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-08"},{"lineNumber":56,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":57,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":58,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":59,"author":{"gitId":"Praneet-25"},"content":" else if (Arrays.asList(input.split( \" \")).contains(\"unmark\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":61,"author":{"gitId":"Praneet-25"},"content":" //Finding the index of the task that the user wants to mark","lastModifiedDate":"2024-02-08"},{"lineNumber":62,"author":{"gitId":"Praneet-25"},"content":" String[] splitInput \u003d input.split(\" \");","lastModifiedDate":"2024-02-08"},{"lineNumber":63,"author":{"gitId":"Praneet-25"},"content":" int indexTask \u003d Integer.parseInt(splitInput[1]);","lastModifiedDate":"2024-02-08"},{"lineNumber":64,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":65,"author":{"gitId":"Praneet-25"},"content":" listOfItems[indexTask - 1].markAsNotCompleted();","lastModifiedDate":"2024-02-08"},{"lineNumber":66,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":67,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-08"},{"lineNumber":68,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\" OK, I\u0027ve marked this task as not done yet:\");","lastModifiedDate":"2024-02-08"},{"lineNumber":69,"author":{"gitId":"Praneet-25"},"content":" System.out.println((indexTask) + \". \" + \"[\" + listOfItems[indexTask-1].getStatusIcon() + \"]\" + listOfItems[indexTask - 1].description);","lastModifiedDate":"2024-02-08"},{"lineNumber":70,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-08"},{"lineNumber":71,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":72,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":73,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":74,"author":{"gitId":"Praneet-25"},"content":" else if (Arrays.asList(input.split( \" \")).contains(\"todo\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":75,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":76,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":77,"author":{"gitId":"Praneet-25"},"content":" listOfItems[sizeOfAddedItems] \u003d new ToDo(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":78,"author":{"gitId":"Praneet-25"},"content":" sizeOfAddedItems +\u003d 1;","lastModifiedDate":"2024-02-09"},{"lineNumber":79,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":80,"author":{"gitId":"Praneet-25"},"content":" indicateNewTask(listOfItems[sizeOfAddedItems - 1], sizeOfAddedItems);","lastModifiedDate":"2024-02-09"},{"lineNumber":81,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":82,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":83,"author":{"gitId":"Praneet-25"},"content":" else if (Arrays.asList(input.split( \" \")).contains(\"deadline\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":84,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":85,"author":{"gitId":"Praneet-25"},"content":" listOfItems[sizeOfAddedItems] \u003d new Deadline(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":86,"author":{"gitId":"Praneet-25"},"content":" sizeOfAddedItems +\u003d 1;","lastModifiedDate":"2024-02-09"},{"lineNumber":87,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":88,"author":{"gitId":"Praneet-25"},"content":" indicateNewTask(listOfItems[sizeOfAddedItems - 1], sizeOfAddedItems);","lastModifiedDate":"2024-02-09"},{"lineNumber":89,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":90,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":91,"author":{"gitId":"Praneet-25"},"content":" else if (Arrays.asList(input.split( \" \")).contains(\"event\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":92,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":93,"author":{"gitId":"Praneet-25"},"content":" listOfItems[sizeOfAddedItems] \u003d new Event(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":94,"author":{"gitId":"Praneet-25"},"content":" sizeOfAddedItems +\u003d 1;","lastModifiedDate":"2024-02-09"},{"lineNumber":95,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":96,"author":{"gitId":"Praneet-25"},"content":" indicateNewTask(listOfItems[sizeOfAddedItems - 1], sizeOfAddedItems);","lastModifiedDate":"2024-02-09"},{"lineNumber":97,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":98,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":99,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":100,"author":{"gitId":"Praneet-25"},"content":" else {","lastModifiedDate":"2024-02-09"},{"lineNumber":101,"author":{"gitId":"Praneet-25"},"content":" listOfItems[sizeOfAddedItems] \u003d new Task(input);","lastModifiedDate":"2024-02-08"},{"lineNumber":102,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-08"},{"lineNumber":103,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\" added: \" + input);","lastModifiedDate":"2024-02-08"},{"lineNumber":104,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-08"},{"lineNumber":105,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":106,"author":{"gitId":"Praneet-25"},"content":" sizeOfAddedItems++;","lastModifiedDate":"2024-02-08"},{"lineNumber":107,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":108,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":109,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":110,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":111,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-08"},{"lineNumber":112,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"Bye. Hope to see you again soon!\");","lastModifiedDate":"2024-02-08"},{"lineNumber":113,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-08"},{"lineNumber":114,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":115,"author":{"gitId":"-"},"content":" }","lastModifiedDate":"2019-07-29"},{"lineNumber":116,"author":{"gitId":"Praneet-25"},"content":" public static void indicateNewTask(Task newTask, int currentNumberOfTasks) {","lastModifiedDate":"2024-02-09"},{"lineNumber":117,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-09"},{"lineNumber":118,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"Well done, you\u0027ve added a new task: \");","lastModifiedDate":"2024-02-09"},{"lineNumber":119,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"[\" + newTask.typeOfTask + \"]\" + \"[\" + newTask.getStatusIcon() + \"]\" + newTask.description);","lastModifiedDate":"2024-02-09"},{"lineNumber":120,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"Currently you have \" + currentNumberOfTasks + \" task(s) in your list!\");","lastModifiedDate":"2024-02-09"},{"lineNumber":121,"author":{"gitId":"Praneet-25"},"content":" System.out.println(\"____________________________________________________________\");","lastModifiedDate":"2024-02-09"},{"lineNumber":122,"author":{"gitId":"-"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":123,"author":{"gitId":"-"},"content":"}","lastModifiedDate":"2019-07-29"},{"lineNumber":124,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"Praneet-25":114,"-":10}},{"path":"src/main/java/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"Praneet-25"},"content":"public class Event extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"Praneet-25"},"content":" protected String startingDate;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"Praneet-25"},"content":" protected String endingDate;","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"Praneet-25"},"content":" public Event(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"Praneet-25"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"Praneet-25"},"content":" typeOfTask \u003d \"E\";","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"Praneet-25"},"content":" int dividerIndexFrom \u003d description.indexOf(\"/\");","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"Praneet-25"},"content":" int dividerIndexTo \u003d description.lastIndexOf(\"/\");","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"Praneet-25"},"content":" setStartingDate(description.substring(dividerIndexFrom + 6, dividerIndexTo - 1));","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"Praneet-25"},"content":" setEndingDate(description.substring(dividerIndexTo + 4));","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"Praneet-25"},"content":" if (dividerIndexFrom \u003d\u003d -1) {","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"Praneet-25"},"content":" setStartingDate(null);","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"Praneet-25"},"content":" else if (dividerIndexTo \u003d\u003d -1) {","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"Praneet-25"},"content":" setEndingDate(null);","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"Praneet-25"},"content":" String descriptionWithoutDate \u003d description.substring(0, (dividerIndexFrom - 1)).replace(\"event\", \"\");","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"Praneet-25"},"content":" this.description \u003d descriptionWithoutDate + \" (from: \" + getStartingDate() + \" to: \" + getEndingDate() + \")\";","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"Praneet-25"},"content":" public String getStartingDate() {","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"Praneet-25"},"content":" return startingDate;","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"Praneet-25"},"content":" public void setStartingDate(String startingDate) {","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"Praneet-25"},"content":" this.startingDate \u003d startingDate;","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"Praneet-25"},"content":" public String getEndingDate() {","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"Praneet-25"},"content":" return endingDate;","lastModifiedDate":"2024-02-09"},{"lineNumber":39,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"Praneet-25"},"content":" public void setEndingDate(String endingDate) {","lastModifiedDate":"2024-02-09"},{"lineNumber":42,"author":{"gitId":"Praneet-25"},"content":" this.endingDate \u003d endingDate;","lastModifiedDate":"2024-02-09"},{"lineNumber":43,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":44,"author":{"gitId":"Praneet-25"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"Praneet-25":44}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"Praneet-25"},"content":"public class Task {","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"Praneet-25"},"content":" protected String description;","lastModifiedDate":"2024-02-08"},{"lineNumber":3,"author":{"gitId":"Praneet-25"},"content":" protected boolean isDone;","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":5,"author":{"gitId":"Praneet-25"},"content":" protected String typeOfTask;","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"Praneet-25"},"content":" public Task(String description) {","lastModifiedDate":"2024-02-08"},{"lineNumber":8,"author":{"gitId":"Praneet-25"},"content":" this.description \u003d description;","lastModifiedDate":"2024-02-08"},{"lineNumber":9,"author":{"gitId":"Praneet-25"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-08"},{"lineNumber":10,"author":{"gitId":"Praneet-25"},"content":" typeOfTask \u003d \"\";","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":12,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":13,"author":{"gitId":"Praneet-25"},"content":" public String getStatusIcon() {","lastModifiedDate":"2024-02-08"},{"lineNumber":14,"author":{"gitId":"Praneet-25"},"content":" return (isDone ? \"X\" : \" \");","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":16,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":17,"author":{"gitId":"Praneet-25"},"content":" public void markAsCompleted() {","lastModifiedDate":"2024-02-08"},{"lineNumber":18,"author":{"gitId":"Praneet-25"},"content":" isDone \u003d true;","lastModifiedDate":"2024-02-08"},{"lineNumber":19,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":20,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":21,"author":{"gitId":"Praneet-25"},"content":" public void markAsNotCompleted() {","lastModifiedDate":"2024-02-08"},{"lineNumber":22,"author":{"gitId":"Praneet-25"},"content":" isDone \u003d false;","lastModifiedDate":"2024-02-08"},{"lineNumber":23,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":24,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":25,"author":{"gitId":"Praneet-25"},"content":"}","lastModifiedDate":"2024-02-08"}],"authorContributionMap":{"Praneet-25":25}},{"path":"src/main/java/ToDo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"Praneet-25"},"content":"public class ToDo extends Task{","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"Praneet-25"},"content":" protected String dateOfDeadline;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"Praneet-25"},"content":" public ToDo(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"Praneet-25"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"Praneet-25"},"content":" typeOfTask \u003d \"T\";","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"Praneet-25"},"content":" this.description \u003d description.replace(\"todo\", \"\");","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"Praneet-25"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"Praneet-25"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"Praneet-25"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"Praneet-25":11}}] diff --git a/Praneet-25_ip_master/commits.json b/Praneet-25_ip_master/commits.json index e9c3603c..63bf88d7 100644 --- a/Praneet-25_ip_master/commits.json +++ b/Praneet-25_ip_master/commits.json @@ -1 +1 @@ -{"authorDailyContributionsMap":{"Praneet-25":[{"date":"2024-02-08","commitResults":[{"hash":"f54347d6b32dd690999f3f86c3a9a3d864282913","isMergeCommit":false,"messageTitle":"Complete Level-0 by adding skeleton code","messageBody":"","tags":["Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":7,"deletions":1}}},{"hash":"d74699ab3dce99cba7ddc524e875b3346fb18bf7","isMergeCommit":false,"messageTitle":"Add echo functionality for Level-1","messageBody":"","tags":["Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":22,"deletions":0}}},{"hash":"27e84ebc927c12402da54bfac86987a02158f5ff","isMergeCommit":false,"messageTitle":"Add the ability to store whatever text entered by the user and display them back to the user when requested.","messageBody":"","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":18,"deletions":3}}},{"hash":"8085bde26236dfb51620830ac76cb1991b7b825f","isMergeCommit":false,"messageTitle":"Add the ability to mark tasks as done, refactor code to use Task class, add the ability to change the status back to not done.","messageBody":"","tags":["Level-3","A-CodingStandard"],"fileTypesAndContributionMap":{"java":{"insertions":56,"deletions":4}}}]}]},"authorFileTypeContributionMap":{"Praneet-25":{"java":96,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"Praneet-25":558.7755},"authorDisplayNameMap":{"Praneet-25":"CS2113-W12-2 SEEN..NEET"}} +{"authorDailyContributionsMap":{"Praneet-25":[{"date":"2024-02-08","commitResults":[{"hash":"f54347d6b32dd690999f3f86c3a9a3d864282913","isMergeCommit":false,"messageTitle":"Complete Level-0 by adding skeleton code","messageBody":"","tags":["Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":7,"deletions":1}}},{"hash":"d74699ab3dce99cba7ddc524e875b3346fb18bf7","isMergeCommit":false,"messageTitle":"Add echo functionality for Level-1","messageBody":"","tags":["Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":22,"deletions":0}}},{"hash":"27e84ebc927c12402da54bfac86987a02158f5ff","isMergeCommit":false,"messageTitle":"Add the ability to store whatever text entered by the user and display them back to the user when requested.","messageBody":"","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":18,"deletions":3}}},{"hash":"8085bde26236dfb51620830ac76cb1991b7b825f","isMergeCommit":false,"messageTitle":"Add the ability to mark tasks as done, refactor code to use Task class, add the ability to change the status back to not done.","messageBody":"","tags":["Level-3","A-CodingStandard"],"fileTypesAndContributionMap":{"java":{"insertions":56,"deletions":4}}}]},{"date":"2024-02-09","commitResults":[{"hash":"6fd91752e7cc5516908944b4f7acd2d663afcf3a","isMergeCommit":false,"messageTitle":"Add Todo, deadline, event, types of task","messageBody":"","tags":["Level-4"],"fileTypesAndContributionMap":{"java":{"insertions":135,"deletions":5}}}]}]},"authorFileTypeContributionMap":{"Praneet-25":{"java":225,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"Praneet-25":1320.7872},"authorDisplayNameMap":{"Praneet-25":"CS2113-W12-2 SEEN..NEET"}} diff --git a/adamzzq_ip_master/authorship.json b/adamzzq_ip_master/authorship.json index cf7795ef..8663bd2c 100644 --- a/adamzzq_ip_master/authorship.json +++ b/adamzzq_ip_master/authorship.json @@ -1 +1 @@ -[{"path":"src/main/java/Adam.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"import java.util.NoSuchElementException;","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-01-30"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":"public class Adam {","lastModifiedDate":"2024-01-23"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-01-30"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" Scanner input \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-08"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":" TaskList tasks \u003d new TaskList();","lastModifiedDate":"2024-01-31"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":" System.out.println(Message.GREETING_MESSAGE);","lastModifiedDate":"2024-02-04"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":" while (input.hasNextLine()) {","lastModifiedDate":"2024-02-08"},{"lineNumber":12,"author":{"gitId":"adamzzq"},"content":" System.out.print(Message.DELIMITER);","lastModifiedDate":"2024-02-04"},{"lineNumber":13,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":14,"author":{"gitId":"adamzzq"},"content":" try {","lastModifiedDate":"2024-02-07"},{"lineNumber":15,"author":{"gitId":"adamzzq"},"content":" CommandGenerator.generate(input.nextLine())","lastModifiedDate":"2024-02-08"},{"lineNumber":16,"author":{"gitId":"adamzzq"},"content":" .orElseThrow()","lastModifiedDate":"2024-02-08"},{"lineNumber":17,"author":{"gitId":"adamzzq"},"content":" .execute(tasks);","lastModifiedDate":"2024-02-08"},{"lineNumber":18,"author":{"gitId":"adamzzq"},"content":" } catch (NoSuchElementException error) {","lastModifiedDate":"2024-02-07"},{"lineNumber":19,"author":{"gitId":"adamzzq"},"content":" System.out.println(Message.ERROR_MESSAGE);","lastModifiedDate":"2024-02-07"},{"lineNumber":20,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":21,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":22,"author":{"gitId":"adamzzq"},"content":" System.out.println(Message.DELIMITER);","lastModifiedDate":"2024-02-04"},{"lineNumber":23,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":24,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-23"},{"lineNumber":25,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-01-30"}],"authorContributionMap":{"adamzzq":25}},{"path":"src/main/java/AddTaskCommand.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"public class AddTaskCommand implements Command {","lastModifiedDate":"2024-01-31"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":" private final String[] taskDescriptions;","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":" public AddTaskCommand(String[] taskDescriptions) {","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":" this.taskDescriptions \u003d taskDescriptions;","lastModifiedDate":"2024-02-07"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":" @Override","lastModifiedDate":"2024-01-31"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":" public void execute(TaskList tasks) {","lastModifiedDate":"2024-01-31"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":" tasks.addTask(TaskGenerator.generate(taskDescriptions));","lastModifiedDate":"2024-02-08"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":" System.out.println(Message.ADD_TASK_MESSAGE_FRONT","lastModifiedDate":"2024-02-07"},{"lineNumber":12,"author":{"gitId":"adamzzq"},"content":" + tasks.getTask(tasks.size())","lastModifiedDate":"2024-02-07"},{"lineNumber":13,"author":{"gitId":"adamzzq"},"content":" + Message.ADD_TASK_MESSAGE_MIDDLE","lastModifiedDate":"2024-02-07"},{"lineNumber":14,"author":{"gitId":"adamzzq"},"content":" + tasks.size()","lastModifiedDate":"2024-02-07"},{"lineNumber":15,"author":{"gitId":"adamzzq"},"content":" + Message.ADD_TASK_MESSAGE_END);","lastModifiedDate":"2024-02-07"},{"lineNumber":16,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":17,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-01-31"}],"authorContributionMap":{"adamzzq":17}},{"path":"src/main/java/Command.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"public interface Command {","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":" void execute(TaskList tasks);","lastModifiedDate":"2024-01-31"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-01-31"}],"authorContributionMap":{"adamzzq":3}},{"path":"src/main/java/CommandGenerator.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"import java.util.Optional;","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":"public class CommandGenerator{","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":" public static Optional\u003cCommand\u003e generate(String input) {","lastModifiedDate":"2024-02-08"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":" switch (Parser.analyzeInput(input)) {","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" case BYE:","lastModifiedDate":"2024-02-08"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":" return Optional.of(new ExitCommand());","lastModifiedDate":"2024-02-07"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":" case LIST:","lastModifiedDate":"2024-02-08"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":" return Optional.of(new ListCommand());","lastModifiedDate":"2024-02-07"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":12,"author":{"gitId":"adamzzq"},"content":" case TOGGLE:","lastModifiedDate":"2024-02-08"},{"lineNumber":13,"author":{"gitId":"adamzzq"},"content":" return Optional.of(new ToggleStatusCommand(input));","lastModifiedDate":"2024-02-07"},{"lineNumber":14,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":15,"author":{"gitId":"adamzzq"},"content":" default:","lastModifiedDate":"2024-02-08"},{"lineNumber":16,"author":{"gitId":"adamzzq"},"content":" return Optional.of(new AddTaskCommand(Parser.splitInput(input)));","lastModifiedDate":"2024-02-08"},{"lineNumber":17,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":18,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":19,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-02-07"}],"authorContributionMap":{"adamzzq":19}},{"path":"src/main/java/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"public class Deadline extends Task {","lastModifiedDate":"2024-02-04"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":" protected String by;","lastModifiedDate":"2024-02-04"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-04"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":" public Deadline(String description, String by) {","lastModifiedDate":"2024-02-04"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":" super(description);","lastModifiedDate":"2024-02-04"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" this.by \u003d by;","lastModifiedDate":"2024-02-04"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-04"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-04"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":" @Override","lastModifiedDate":"2024-02-04"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":" public String toString() {","lastModifiedDate":"2024-02-04"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":" return \"[D]\" + super.toString() + \" (by: \" + by + \")\";","lastModifiedDate":"2024-02-04"},{"lineNumber":12,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-04"},{"lineNumber":13,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-02-04"}],"authorContributionMap":{"adamzzq":13}},{"path":"src/main/java/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"public class Event extends Task {","lastModifiedDate":"2024-02-04"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":" protected String from;","lastModifiedDate":"2024-02-04"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":" protected String to;","lastModifiedDate":"2024-02-04"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-04"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":" public Event(String description, String from, String to) {","lastModifiedDate":"2024-02-04"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" super(description);","lastModifiedDate":"2024-02-04"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":" this.from \u003d from;","lastModifiedDate":"2024-02-04"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":" this.to \u003d to;","lastModifiedDate":"2024-02-04"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-04"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-04"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":" @Override","lastModifiedDate":"2024-02-04"},{"lineNumber":12,"author":{"gitId":"adamzzq"},"content":" public String toString() {","lastModifiedDate":"2024-02-04"},{"lineNumber":13,"author":{"gitId":"adamzzq"},"content":" return String.format(\"[E]%s (from: %s to: %s)\", super.toString(), from, to);","lastModifiedDate":"2024-02-04"},{"lineNumber":14,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-04"},{"lineNumber":15,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-02-04"}],"authorContributionMap":{"adamzzq":15}},{"path":"src/main/java/ExitCommand.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"public class ExitCommand implements Command {","lastModifiedDate":"2024-01-31"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":" @Override","lastModifiedDate":"2024-01-31"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":" public void execute(TaskList tasks) {","lastModifiedDate":"2024-01-31"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":" System.out.print(Message.EXIT_MESSAGE);","lastModifiedDate":"2024-02-04"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":" System.exit(0);","lastModifiedDate":"2024-01-31"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-01-31"}],"authorContributionMap":{"adamzzq":7}},{"path":"src/main/java/ListCommand.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"public class ListCommand implements Command {","lastModifiedDate":"2024-01-31"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":" @Override","lastModifiedDate":"2024-01-31"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":" public void execute(TaskList tasks) {","lastModifiedDate":"2024-01-31"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":" System.out.println(Message.LIST_MESSAGE_FRONT);","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":" tasks.displayAll();","lastModifiedDate":"2024-01-31"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" System.out.println(Message.LIST_MESSAGE_END);","lastModifiedDate":"2024-02-07"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-01-31"}],"authorContributionMap":{"adamzzq":8}},{"path":"src/main/java/Message.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"import java.util.Random;","lastModifiedDate":"2024-01-31"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":"public class Message {","lastModifiedDate":"2024-02-04"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":" public static final String DELIMITER \u003d \"\\n\u003e\u003d\u003d\u003d\u003d\u003e \u003e\u003d\u003d\u003d\u003d\u003e \u003e\u003d\u003d\u003d\u003d\u003e \u003e\u003d\u003d\u003d\u003d\u003e \u003e\u003d\u003d\u003d\u003d\u003e \u003e\u003d\u003d\u003d\u003d\u003e \u003e\u003d\u003d\u003d\u003d\u003e \u003e\u003d\u003d\u003d\u003d\u003e \u003e\u003d\u003d\u003d\u003d\u003e\\n\";","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" private static final String LOGO_DEFAULT \u003d \" _ \\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":" + \" /\\\\ | | \\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":" + \" / \\\\ __| | __ _ _ __ ___ \\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":" + \" / /\\\\ \\\\ / _` |/ _` | \u0027_ ` _ \\\\ \\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":" + \" / ____ \\\\ (_| | (_| | | | | | |\\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":" + \" /_/ \\\\_\\\\__,_|\\\\__,_|_| |_| |_|\\n\";","lastModifiedDate":"2024-01-31"},{"lineNumber":12,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":13,"author":{"gitId":"adamzzq"},"content":" private static final String LOGO_BOLD \u003d \" █████╗ ██████╗ █████╗ ███╗ ███╗\\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":14,"author":{"gitId":"adamzzq"},"content":" + \"██╔══██╗██╔══██╗██╔══██╗████╗ ████║\\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":15,"author":{"gitId":"adamzzq"},"content":" + \"███████║██║ ██║███████║██╔████╔██║\\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":16,"author":{"gitId":"adamzzq"},"content":" + \"██╔══██║██║ ██║██╔══██║██║╚██╔╝██║\\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":17,"author":{"gitId":"adamzzq"},"content":" + \"██║ ██║██████╔╝██║ ██║██║ ╚═╝ ██║\\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":18,"author":{"gitId":"adamzzq"},"content":" + \"╚═╝ ╚═╝╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝\\n\";","lastModifiedDate":"2024-01-31"},{"lineNumber":19,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":20,"author":{"gitId":"adamzzq"},"content":" private static final String LOGO_3D \u003d \" ________ ________ ________ _____ ______ \\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":21,"author":{"gitId":"adamzzq"},"content":" + \"|\\\\ __ \\\\|\\\\ ___ \\\\|\\\\ __ \\\\|\\\\ _ \\\\ _ \\\\ \\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":22,"author":{"gitId":"adamzzq"},"content":" + \"\\\\ \\\\ \\\\|\\\\ \\\\ \\\\ \\\\_|\\\\ \\\\ \\\\ \\\\|\\\\ \\\\ \\\\ \\\\\\\\\\\\__\\\\ \\\\ \\\\ \\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":23,"author":{"gitId":"adamzzq"},"content":" + \" \\\\ \\\\ __ \\\\ \\\\ \\\\ \\\\\\\\ \\\\ \\\\ __ \\\\ \\\\ \\\\\\\\|__| \\\\ \\\\ \\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":24,"author":{"gitId":"adamzzq"},"content":" + \" \\\\ \\\\ \\\\ \\\\ \\\\ \\\\ \\\\_\\\\\\\\ \\\\ \\\\ \\\\ \\\\ \\\\ \\\\ \\\\ \\\\ \\\\ \\\\ \\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":25,"author":{"gitId":"adamzzq"},"content":" + \" \\\\ \\\\__\\\\ \\\\__\\\\ \\\\_______\\\\ \\\\__\\\\ \\\\__\\\\ \\\\__\\\\ \\\\ \\\\__\\\\\\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":26,"author":{"gitId":"adamzzq"},"content":" + \" \\\\|__|\\\\|__|\\\\|_______|\\\\|__|\\\\|__|\\\\|__| \\\\|__|\\n\";","lastModifiedDate":"2024-01-31"},{"lineNumber":27,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":28,"author":{"gitId":"adamzzq"},"content":" private static final String GREETING \u003d DELIMITER","lastModifiedDate":"2024-01-31"},{"lineNumber":29,"author":{"gitId":"adamzzq"},"content":" + \"Greetings, human! I\u0027m Adam, your friendly chat bot.\\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":30,"author":{"gitId":"adamzzq"},"content":" + \"Ready to conquer the world of tasks together?\\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":31,"author":{"gitId":"adamzzq"},"content":" + \"Let\u0027s dive into the adventure!\\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":32,"author":{"gitId":"adamzzq"},"content":" + DELIMITER;","lastModifiedDate":"2024-01-31"},{"lineNumber":33,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":34,"author":{"gitId":"adamzzq"},"content":" private static final String[] LOGOS \u003d {LOGO_DEFAULT, LOGO_BOLD, LOGO_3D};","lastModifiedDate":"2024-02-01"},{"lineNumber":35,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":36,"author":{"gitId":"adamzzq"},"content":" public static final String GREETING_MESSAGE \u003d \"Hello from\\n\" + LOGOS[new Random().nextInt(LOGOS.length)]","lastModifiedDate":"2024-02-04"},{"lineNumber":37,"author":{"gitId":"adamzzq"},"content":" + GREETING;","lastModifiedDate":"2024-02-04"},{"lineNumber":38,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":39,"author":{"gitId":"adamzzq"},"content":" public static final String EXIT_MESSAGE \u003d \"Farewell, adventurer! Until our paths cross again!\\n\" + DELIMITER;","lastModifiedDate":"2024-01-31"},{"lineNumber":40,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":41,"author":{"gitId":"adamzzq"},"content":" public static final String MARK_MESSAGE \u003d \"Ta-da! Task conquered! I\u0027ve marked this task as done:\\n\";","lastModifiedDate":"2024-01-31"},{"lineNumber":42,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":43,"author":{"gitId":"adamzzq"},"content":" public static final String UNMARK_MESSAGE \u003d \"Whoopsie-daisy! This task is back in action:\\n\";","lastModifiedDate":"2024-01-31"},{"lineNumber":44,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":45,"author":{"gitId":"adamzzq"},"content":" public static final String ERROR_MESSAGE \u003d \"Oopsie! Looks like I got tangled up in my circuits.\\n\"","lastModifiedDate":"2024-02-07"},{"lineNumber":46,"author":{"gitId":"adamzzq"},"content":" + \"Could you please try again?\";","lastModifiedDate":"2024-02-07"},{"lineNumber":47,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":48,"author":{"gitId":"adamzzq"},"content":" public static final String ADD_TASK_MESSAGE_FRONT \u003d \"Awesome sauce! Task successfully added:\\n \";","lastModifiedDate":"2024-02-07"},{"lineNumber":49,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":50,"author":{"gitId":"adamzzq"},"content":" public static final String ADD_TASK_MESSAGE_MIDDLE \u003d \"\\nYou now have a whopping \";","lastModifiedDate":"2024-02-07"},{"lineNumber":51,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":52,"author":{"gitId":"adamzzq"},"content":" public static final String ADD_TASK_MESSAGE_END \u003d \" tasks in the list. Keep \u0027em coming!\";","lastModifiedDate":"2024-02-08"},{"lineNumber":53,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":54,"author":{"gitId":"adamzzq"},"content":" public static final String LIST_MESSAGE_FRONT \u003d \"Behold, the mighty task(s) in your realm:\\n\";","lastModifiedDate":"2024-02-07"},{"lineNumber":55,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":56,"author":{"gitId":"adamzzq"},"content":" public static final String LIST_MESSAGE_END \u003d \"\\nThese tasks await your valiant efforts, noble taskmaster!\";","lastModifiedDate":"2024-02-08"},{"lineNumber":57,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-01-31"}],"authorContributionMap":{"adamzzq":57}},{"path":"src/main/java/Parser.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"import java.util.Arrays;","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":"import java.util.regex.Matcher;","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":"import java.util.regex.Pattern;","lastModifiedDate":"2024-02-07"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":"public enum Parser {","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" BYE(\"bye\"),","lastModifiedDate":"2024-02-08"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":" LIST(\"list\"),","lastModifiedDate":"2024-02-08"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":" TOGGLE(\"^(mark [0-9]*|unmark [0-9]*)\"),","lastModifiedDate":"2024-02-08"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":" TODO(\"todo\\\\s(.+)\"),","lastModifiedDate":"2024-02-08"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":" DEADLINE(\"deadline\\\\s(.+)/by\\\\s(.+)\"),","lastModifiedDate":"2024-02-08"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":" EVENT(\"event\\\\s(.+)/from\\\\s(.+)/to\\\\s(.+)\");","lastModifiedDate":"2024-02-08"},{"lineNumber":12,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":13,"author":{"gitId":"adamzzq"},"content":" private final String commandRegex;","lastModifiedDate":"2024-02-08"},{"lineNumber":14,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":15,"author":{"gitId":"adamzzq"},"content":" Parser(String commandRegex) {","lastModifiedDate":"2024-02-08"},{"lineNumber":16,"author":{"gitId":"adamzzq"},"content":" this.commandRegex \u003d commandRegex;","lastModifiedDate":"2024-02-08"},{"lineNumber":17,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":18,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":19,"author":{"gitId":"adamzzq"},"content":" private String getCommandRegex() {","lastModifiedDate":"2024-02-08"},{"lineNumber":20,"author":{"gitId":"adamzzq"},"content":" return this.commandRegex;","lastModifiedDate":"2024-02-08"},{"lineNumber":21,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":22,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":23,"author":{"gitId":"adamzzq"},"content":" public static Parser analyzeInput(String input) {","lastModifiedDate":"2024-02-08"},{"lineNumber":24,"author":{"gitId":"adamzzq"},"content":" return Arrays.stream(Parser.values())","lastModifiedDate":"2024-02-08"},{"lineNumber":25,"author":{"gitId":"adamzzq"},"content":" .filter(token -\u003e input.matches(token.getCommandRegex()))","lastModifiedDate":"2024-02-08"},{"lineNumber":26,"author":{"gitId":"adamzzq"},"content":" .findFirst()","lastModifiedDate":"2024-02-08"},{"lineNumber":27,"author":{"gitId":"adamzzq"},"content":" .orElseThrow();","lastModifiedDate":"2024-02-08"},{"lineNumber":28,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":29,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":30,"author":{"gitId":"adamzzq"},"content":" public static String[] splitInput(String input) {","lastModifiedDate":"2024-02-08"},{"lineNumber":31,"author":{"gitId":"adamzzq"},"content":" String[] parsedInput \u003d {};","lastModifiedDate":"2024-02-08"},{"lineNumber":32,"author":{"gitId":"adamzzq"},"content":" Matcher eventMatcher \u003d Pattern.compile(EVENT.getCommandRegex()).matcher(input);","lastModifiedDate":"2024-02-08"},{"lineNumber":33,"author":{"gitId":"adamzzq"},"content":" Matcher deadlineMatcher \u003d Pattern.compile(DEADLINE.getCommandRegex()).matcher(input);","lastModifiedDate":"2024-02-08"},{"lineNumber":34,"author":{"gitId":"adamzzq"},"content":" Matcher todoMatcher \u003d Pattern.compile(TODO.getCommandRegex()).matcher(input);","lastModifiedDate":"2024-02-08"},{"lineNumber":35,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":36,"author":{"gitId":"adamzzq"},"content":" if (eventMatcher.find()) {","lastModifiedDate":"2024-02-07"},{"lineNumber":37,"author":{"gitId":"adamzzq"},"content":" parsedInput \u003d new String[3];","lastModifiedDate":"2024-02-07"},{"lineNumber":38,"author":{"gitId":"adamzzq"},"content":" parsedInput[0] \u003d eventMatcher.group(1);","lastModifiedDate":"2024-02-07"},{"lineNumber":39,"author":{"gitId":"adamzzq"},"content":" parsedInput[1] \u003d eventMatcher.group(2);","lastModifiedDate":"2024-02-07"},{"lineNumber":40,"author":{"gitId":"adamzzq"},"content":" parsedInput[2] \u003d eventMatcher.group(3);","lastModifiedDate":"2024-02-07"},{"lineNumber":41,"author":{"gitId":"adamzzq"},"content":" } else if (deadlineMatcher.find()) {","lastModifiedDate":"2024-02-07"},{"lineNumber":42,"author":{"gitId":"adamzzq"},"content":" parsedInput \u003d new String[2];","lastModifiedDate":"2024-02-07"},{"lineNumber":43,"author":{"gitId":"adamzzq"},"content":" parsedInput[0] \u003d deadlineMatcher.group(1);","lastModifiedDate":"2024-02-07"},{"lineNumber":44,"author":{"gitId":"adamzzq"},"content":" parsedInput[1] \u003d deadlineMatcher.group(2);","lastModifiedDate":"2024-02-07"},{"lineNumber":45,"author":{"gitId":"adamzzq"},"content":" } else if (todoMatcher.find()) {","lastModifiedDate":"2024-02-07"},{"lineNumber":46,"author":{"gitId":"adamzzq"},"content":" parsedInput \u003d new String[1];","lastModifiedDate":"2024-02-07"},{"lineNumber":47,"author":{"gitId":"adamzzq"},"content":" parsedInput[0] \u003d todoMatcher.group(1);","lastModifiedDate":"2024-02-07"},{"lineNumber":48,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":49,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":50,"author":{"gitId":"adamzzq"},"content":" return parsedInput;","lastModifiedDate":"2024-02-07"},{"lineNumber":51,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":52,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-02-07"}],"authorContributionMap":{"adamzzq":52}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"public abstract class Task {","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":" protected String description;","lastModifiedDate":"2024-01-31"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":" protected boolean isDone;","lastModifiedDate":"2024-01-31"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":" public Task(String description) {","lastModifiedDate":"2024-01-31"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" this.description \u003d description;","lastModifiedDate":"2024-01-31"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-01-31"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":" @Override","lastModifiedDate":"2024-01-31"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":" public String toString() {","lastModifiedDate":"2024-01-31"},{"lineNumber":12,"author":{"gitId":"adamzzq"},"content":" return (this.isDone ? \"[X] \" : \"[ ] \") + this.description;","lastModifiedDate":"2024-02-07"},{"lineNumber":13,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":14,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":15,"author":{"gitId":"adamzzq"},"content":" public void setIsDone(boolean newStatus) {","lastModifiedDate":"2024-02-01"},{"lineNumber":16,"author":{"gitId":"adamzzq"},"content":" this.isDone \u003d newStatus;","lastModifiedDate":"2024-02-01"},{"lineNumber":17,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":18,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":19,"author":{"gitId":"adamzzq"},"content":" public boolean isDone() {","lastModifiedDate":"2024-02-01"},{"lineNumber":20,"author":{"gitId":"adamzzq"},"content":" return this.isDone;","lastModifiedDate":"2024-02-07"},{"lineNumber":21,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-01"},{"lineNumber":22,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-01-31"}],"authorContributionMap":{"adamzzq":22}},{"path":"src/main/java/TaskGenerator.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"public class TaskGenerator {","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":" public static Task generate(String[] parsedInput) {","lastModifiedDate":"2024-02-08"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":" if (parsedInput.length \u003d\u003d 1) {","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":" return new ToDo(parsedInput[0]);","lastModifiedDate":"2024-02-08"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":" } else if (parsedInput.length \u003d\u003d 2) {","lastModifiedDate":"2024-02-07"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" return new Deadline(parsedInput[0], parsedInput[1]);","lastModifiedDate":"2024-02-08"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":" return new Event(parsedInput[0], parsedInput[1], parsedInput[2]);","lastModifiedDate":"2024-02-08"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-02-07"}],"authorContributionMap":{"adamzzq":10}},{"path":"src/main/java/TaskList.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"import java.util.ArrayList;","lastModifiedDate":"2024-01-31"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":"import java.util.List;","lastModifiedDate":"2024-01-31"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":"import java.util.stream.IntStream;","lastModifiedDate":"2024-01-31"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":"public class TaskList {","lastModifiedDate":"2024-01-31"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" private final List\u003cTask\u003e tasks;","lastModifiedDate":"2024-01-31"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":" public TaskList() {","lastModifiedDate":"2024-01-31"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":" this.tasks \u003d new ArrayList\u003c\u003e();","lastModifiedDate":"2024-01-31"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":12,"author":{"gitId":"adamzzq"},"content":" public void addTask(Task task) {","lastModifiedDate":"2024-01-31"},{"lineNumber":13,"author":{"gitId":"adamzzq"},"content":" this.tasks.add(task);","lastModifiedDate":"2024-01-31"},{"lineNumber":14,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":15,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":16,"author":{"gitId":"adamzzq"},"content":" public Task getTask(int index) {","lastModifiedDate":"2024-01-31"},{"lineNumber":17,"author":{"gitId":"adamzzq"},"content":" return this.tasks.get(index - 1);","lastModifiedDate":"2024-01-31"},{"lineNumber":18,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":19,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":20,"author":{"gitId":"adamzzq"},"content":" public int size() {","lastModifiedDate":"2024-02-07"},{"lineNumber":21,"author":{"gitId":"adamzzq"},"content":" return this.tasks.size();","lastModifiedDate":"2024-02-07"},{"lineNumber":22,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":23,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":24,"author":{"gitId":"adamzzq"},"content":" public void displayAll() {","lastModifiedDate":"2024-01-31"},{"lineNumber":25,"author":{"gitId":"adamzzq"},"content":" IntStream.rangeClosed(1, tasks.size())","lastModifiedDate":"2024-01-31"},{"lineNumber":26,"author":{"gitId":"adamzzq"},"content":" .mapToObj(index -\u003e index + \".\" + getTask(index))","lastModifiedDate":"2024-02-04"},{"lineNumber":27,"author":{"gitId":"adamzzq"},"content":" .forEach(System.out::println);","lastModifiedDate":"2024-01-31"},{"lineNumber":28,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":29,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-01-31"}],"authorContributionMap":{"adamzzq":29}},{"path":"src/main/java/ToDo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"public class ToDo extends Task {","lastModifiedDate":"2024-02-04"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":" public ToDo(String description) {","lastModifiedDate":"2024-02-04"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":" super(description);","lastModifiedDate":"2024-02-04"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-04"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-04"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" @Override","lastModifiedDate":"2024-02-04"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":" public String toString() {","lastModifiedDate":"2024-02-04"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":" return \"[T]\" + super.toString();","lastModifiedDate":"2024-02-04"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-04"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-02-04"}],"authorContributionMap":{"adamzzq":10}},{"path":"src/main/java/ToggleStatusCommand.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"public class ToggleStatusCommand implements Command {","lastModifiedDate":"2024-01-31"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":" private final int index;","lastModifiedDate":"2024-01-31"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":" private final String command;","lastModifiedDate":"2024-02-01"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":" public ToggleStatusCommand(String input) {","lastModifiedDate":"2024-01-31"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" String[] splitInput \u003d input.split(\" \");","lastModifiedDate":"2024-02-01"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":" this.command \u003d splitInput[0];","lastModifiedDate":"2024-02-01"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":" this.index \u003d Integer.parseInt(splitInput[1]);","lastModifiedDate":"2024-02-01"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":" @Override","lastModifiedDate":"2024-01-31"},{"lineNumber":12,"author":{"gitId":"adamzzq"},"content":" public void execute(TaskList tasks) {","lastModifiedDate":"2024-01-31"},{"lineNumber":13,"author":{"gitId":"adamzzq"},"content":" if (index \u003e 0 \u0026\u0026 index \u003c\u003d tasks.size()) {","lastModifiedDate":"2024-02-08"},{"lineNumber":14,"author":{"gitId":"adamzzq"},"content":" tasks.getTask(index).setIsDone(command.startsWith(\"mark\"));","lastModifiedDate":"2024-02-01"},{"lineNumber":15,"author":{"gitId":"adamzzq"},"content":" System.out.println(toggleMessage(tasks.getTask(index)));","lastModifiedDate":"2024-01-31"},{"lineNumber":16,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":17,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":18,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":19,"author":{"gitId":"adamzzq"},"content":" private String toggleMessage(Task task) {","lastModifiedDate":"2024-01-31"},{"lineNumber":20,"author":{"gitId":"adamzzq"},"content":" String message \u003d \"\";","lastModifiedDate":"2024-01-31"},{"lineNumber":21,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":22,"author":{"gitId":"adamzzq"},"content":" message +\u003d task.isDone() ? Message.MARK_MESSAGE : Message.UNMARK_MESSAGE;","lastModifiedDate":"2024-02-04"},{"lineNumber":23,"author":{"gitId":"adamzzq"},"content":" message +\u003d \" \" + task;","lastModifiedDate":"2024-01-31"},{"lineNumber":24,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":25,"author":{"gitId":"adamzzq"},"content":" return message;","lastModifiedDate":"2024-01-31"},{"lineNumber":26,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":27,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-01-31"}],"authorContributionMap":{"adamzzq":27}},{"path":"text-ui-test/input.txt","fileType":"txt","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"hello","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":"todo sleep for 8 hours","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":"deadline wake up /by 8:00AM tmr","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":"event exercise/from tmr /to 1st Aug. 2024","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":"todo jaer09549)(0","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":"list","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":"mark 1","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":"unmark 1","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":"mark 99","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":"mark -1","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":"unmark 0","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"adamzzq"},"content":"unmark 99","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"adamzzq"},"content":"todo borrow book","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"adamzzq"},"content":"list","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"adamzzq"},"content":"deadline sleep /by 12 tonight","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"adamzzq"},"content":"event sleep /from 12am /to 9a.m. 09/02/2024","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"adamzzq"},"content":"deadline sleep /by 12 tonight","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"adamzzq"},"content":"event sleep /from 12am /to 9a.m. 09/02/2024","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"adamzzq"},"content":"list","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"adamzzq"},"content":"bye","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"adamzzq":20}},{"path":"text-ui-test/runtest.bat","fileType":"bat","lines":[{"lineNumber":1,"author":{"gitId":"-"},"content":"@ECHO OFF","lastModifiedDate":"2020-05-25"},{"lineNumber":2,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":3,"author":{"gitId":"-"},"content":"REM create bin directory if it doesn\u0027t exist","lastModifiedDate":"2020-05-25"},{"lineNumber":4,"author":{"gitId":"-"},"content":"if not exist ..\\bin mkdir ..\\bin","lastModifiedDate":"2020-05-25"},{"lineNumber":5,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":6,"author":{"gitId":"-"},"content":"REM delete output from previous run","lastModifiedDate":"2020-05-25"},{"lineNumber":7,"author":{"gitId":"-"},"content":"if exist ACTUAL.TXT del ACTUAL.TXT","lastModifiedDate":"2020-08-25"},{"lineNumber":8,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":9,"author":{"gitId":"-"},"content":"REM compile the code into the bin folder","lastModifiedDate":"2020-05-25"},{"lineNumber":10,"author":{"gitId":"-"},"content":"javac -cp ..\\src\\main\\java -Xlint:none -d ..\\bin ..\\src\\main\\java\\*.java","lastModifiedDate":"2020-08-25"},{"lineNumber":11,"author":{"gitId":"-"},"content":"IF ERRORLEVEL 1 (","lastModifiedDate":"2020-05-25"},{"lineNumber":12,"author":{"gitId":"-"},"content":" echo ********** BUILD FAILURE **********","lastModifiedDate":"2020-05-25"},{"lineNumber":13,"author":{"gitId":"-"},"content":" exit /b 1","lastModifiedDate":"2020-05-25"},{"lineNumber":14,"author":{"gitId":"-"},"content":")","lastModifiedDate":"2020-05-25"},{"lineNumber":15,"author":{"gitId":"-"},"content":"REM no error here, errorlevel \u003d\u003d 0","lastModifiedDate":"2020-05-25"},{"lineNumber":16,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":17,"author":{"gitId":"-"},"content":"REM run the program, feed commands from input.txt file and redirect the output to the ACTUAL.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":18,"author":{"gitId":"adamzzq"},"content":"java -classpath ..\\bin Adam \u003c input.txt \u003e ACTUAL.TXT","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":20,"author":{"gitId":"-"},"content":"REM compare the output to the expected output","lastModifiedDate":"2020-05-25"},{"lineNumber":21,"author":{"gitId":"-"},"content":"FC ACTUAL.TXT EXPECTED.TXT","lastModifiedDate":"2020-05-25"}],"authorContributionMap":{"adamzzq":1,"-":20}},{"path":"text-ui-test/runtest.sh","fileType":"sh","lines":[{"lineNumber":1,"author":{"gitId":"-"},"content":"#!/usr/bin/env bash","lastModifiedDate":"2020-05-25"},{"lineNumber":2,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":3,"author":{"gitId":"-"},"content":"# create bin directory if it doesn\u0027t exist","lastModifiedDate":"2020-05-25"},{"lineNumber":4,"author":{"gitId":"-"},"content":"if [ ! -d \"../bin\" ]","lastModifiedDate":"2020-05-25"},{"lineNumber":5,"author":{"gitId":"-"},"content":"then","lastModifiedDate":"2020-05-25"},{"lineNumber":6,"author":{"gitId":"-"},"content":" mkdir ../bin","lastModifiedDate":"2020-05-25"},{"lineNumber":7,"author":{"gitId":"-"},"content":"fi","lastModifiedDate":"2020-05-25"},{"lineNumber":8,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":9,"author":{"gitId":"-"},"content":"# delete output from previous run","lastModifiedDate":"2020-05-25"},{"lineNumber":10,"author":{"gitId":"-"},"content":"if [ -e \"./ACTUAL.TXT\" ]","lastModifiedDate":"2020-05-25"},{"lineNumber":11,"author":{"gitId":"-"},"content":"then","lastModifiedDate":"2020-05-25"},{"lineNumber":12,"author":{"gitId":"-"},"content":" rm ACTUAL.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":13,"author":{"gitId":"-"},"content":"fi","lastModifiedDate":"2020-05-25"},{"lineNumber":14,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":15,"author":{"gitId":"-"},"content":"# compile the code into the bin folder, terminates if error occurred","lastModifiedDate":"2020-05-25"},{"lineNumber":16,"author":{"gitId":"-"},"content":"if ! javac -cp ../src/main/java -Xlint:none -d ../bin ../src/main/java/*.java","lastModifiedDate":"2020-08-25"},{"lineNumber":17,"author":{"gitId":"-"},"content":"then","lastModifiedDate":"2020-05-25"},{"lineNumber":18,"author":{"gitId":"-"},"content":" echo \"********** BUILD FAILURE **********\"","lastModifiedDate":"2020-05-25"},{"lineNumber":19,"author":{"gitId":"-"},"content":" exit 1","lastModifiedDate":"2020-05-25"},{"lineNumber":20,"author":{"gitId":"-"},"content":"fi","lastModifiedDate":"2020-05-25"},{"lineNumber":21,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":22,"author":{"gitId":"-"},"content":"# run the program, feed commands from input.txt file and redirect the output to the ACTUAL.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":23,"author":{"gitId":"adamzzq"},"content":"java -classpath ../bin Adam \u003c input.txt \u003e ACTUAL.TXT","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":25,"author":{"gitId":"-"},"content":"# convert to UNIX format","lastModifiedDate":"2020-05-25"},{"lineNumber":26,"author":{"gitId":"-"},"content":"cp EXPECTED.TXT EXPECTED-UNIX.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":27,"author":{"gitId":"-"},"content":"dos2unix ACTUAL.TXT EXPECTED-UNIX.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":28,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":29,"author":{"gitId":"-"},"content":"# compare the output to the expected output","lastModifiedDate":"2020-05-25"},{"lineNumber":30,"author":{"gitId":"-"},"content":"diff ACTUAL.TXT EXPECTED-UNIX.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":31,"author":{"gitId":"-"},"content":"if [ $? -eq 0 ]","lastModifiedDate":"2020-05-25"},{"lineNumber":32,"author":{"gitId":"-"},"content":"then","lastModifiedDate":"2020-05-25"},{"lineNumber":33,"author":{"gitId":"-"},"content":" echo \"Test result: PASSED\"","lastModifiedDate":"2020-05-25"},{"lineNumber":34,"author":{"gitId":"-"},"content":" exit 0","lastModifiedDate":"2020-05-25"},{"lineNumber":35,"author":{"gitId":"-"},"content":"else","lastModifiedDate":"2020-05-25"},{"lineNumber":36,"author":{"gitId":"-"},"content":" echo \"Test result: FAILED\"","lastModifiedDate":"2020-05-25"},{"lineNumber":37,"author":{"gitId":"-"},"content":" exit 1","lastModifiedDate":"2020-05-25"},{"lineNumber":38,"author":{"gitId":"-"},"content":"fi","lastModifiedDate":"2020-05-25"}],"authorContributionMap":{"adamzzq":1,"-":37}}] +[{"path":"src/main/java/Adam.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"import java.util.NoSuchElementException;","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":"public class Adam {","lastModifiedDate":"2024-01-23"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-01-30"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" TaskList tasks \u003d new TaskList();","lastModifiedDate":"2024-01-31"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":" Scanner scanner \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":" String input;","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":" boolean exit \u003d false;","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":" System.out.println(Message.GREETING_MESSAGE);","lastModifiedDate":"2024-02-04"},{"lineNumber":12,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":13,"author":{"gitId":"adamzzq"},"content":" while (!exit) {","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"adamzzq"},"content":" input \u003d scanner.nextLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"adamzzq"},"content":" System.out.println(Message.DELIMITER);","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":18,"author":{"gitId":"adamzzq"},"content":" try {","lastModifiedDate":"2024-02-07"},{"lineNumber":19,"author":{"gitId":"adamzzq"},"content":" exit \u003d CommandGenerator.generate(input)","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"adamzzq"},"content":" .orElseThrow()","lastModifiedDate":"2024-02-08"},{"lineNumber":21,"author":{"gitId":"adamzzq"},"content":" .execute(tasks); // return true if it\u0027s exitCommand; false otherwise","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"adamzzq"},"content":" } catch (NoSuchElementException error) {","lastModifiedDate":"2024-02-07"},{"lineNumber":23,"author":{"gitId":"adamzzq"},"content":" System.out.println(Message.ERROR_MESSAGE);","lastModifiedDate":"2024-02-07"},{"lineNumber":24,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":25,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":26,"author":{"gitId":"adamzzq"},"content":" System.out.println(Message.DELIMITER);","lastModifiedDate":"2024-02-04"},{"lineNumber":27,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":28,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"adamzzq"},"content":" scanner.close();","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-23"},{"lineNumber":31,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-01-30"}],"authorContributionMap":{"adamzzq":31}},{"path":"src/main/java/AddTaskCommand.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"public class AddTaskCommand implements Command {","lastModifiedDate":"2024-01-31"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":" private final Parser token;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":" private final String[] taskDescriptions;","lastModifiedDate":"2024-02-07"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":" public AddTaskCommand(Parser token, String[] taskDescriptions) {","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" this.token \u003d token;","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":" this.taskDescriptions \u003d taskDescriptions;","lastModifiedDate":"2024-02-07"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":" @Override","lastModifiedDate":"2024-01-31"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":" public boolean execute(TaskList tasks) {","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"adamzzq"},"content":" tasks.addTask(token, taskDescriptions);","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"adamzzq"},"content":" System.out.println(Message.ADD_TASK_MESSAGE_FRONT","lastModifiedDate":"2024-02-07"},{"lineNumber":14,"author":{"gitId":"adamzzq"},"content":" + tasks.getTask(tasks.size())","lastModifiedDate":"2024-02-07"},{"lineNumber":15,"author":{"gitId":"adamzzq"},"content":" + Message.ADD_TASK_MESSAGE_MIDDLE","lastModifiedDate":"2024-02-07"},{"lineNumber":16,"author":{"gitId":"adamzzq"},"content":" + tasks.size()","lastModifiedDate":"2024-02-07"},{"lineNumber":17,"author":{"gitId":"adamzzq"},"content":" + Message.ADD_TASK_MESSAGE_END);","lastModifiedDate":"2024-02-07"},{"lineNumber":18,"author":{"gitId":"adamzzq"},"content":" return false;","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":20,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-01-31"}],"authorContributionMap":{"adamzzq":20}},{"path":"src/main/java/Command.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"public interface Command {","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":" boolean execute(TaskList tasks);","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-01-31"}],"authorContributionMap":{"adamzzq":3}},{"path":"src/main/java/CommandGenerator.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"import java.util.Optional;","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":"public class CommandGenerator{","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":" public static Optional\u003cCommand\u003e generate(String input) {","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":" // match input to corresponding enum (also handles invalid input)","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" Parser token \u003d Parser.analyzeInput(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":" switch (token) {","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":" case BYE:","lastModifiedDate":"2024-02-08"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":" return Optional.of(new ExitCommand());","lastModifiedDate":"2024-02-07"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":12,"author":{"gitId":"adamzzq"},"content":" case LIST:","lastModifiedDate":"2024-02-08"},{"lineNumber":13,"author":{"gitId":"adamzzq"},"content":" return Optional.of(new ListCommand());","lastModifiedDate":"2024-02-07"},{"lineNumber":14,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":15,"author":{"gitId":"adamzzq"},"content":" case TOGGLE:","lastModifiedDate":"2024-02-08"},{"lineNumber":16,"author":{"gitId":"adamzzq"},"content":" return Optional.of(new ToggleStatusCommand(Parser.splitInput(input)));","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":18,"author":{"gitId":"adamzzq"},"content":" default:","lastModifiedDate":"2024-02-08"},{"lineNumber":19,"author":{"gitId":"adamzzq"},"content":" return Optional.of(new AddTaskCommand(token, Parser.splitInput(input)));","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":21,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":22,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-02-07"}],"authorContributionMap":{"adamzzq":22}},{"path":"src/main/java/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"public class Deadline extends Task {","lastModifiedDate":"2024-02-04"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":" protected String by;","lastModifiedDate":"2024-02-04"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-04"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":" public Deadline(String description, String by) {","lastModifiedDate":"2024-02-04"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":" super(description);","lastModifiedDate":"2024-02-04"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" this.by \u003d by;","lastModifiedDate":"2024-02-04"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-04"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-04"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":" @Override","lastModifiedDate":"2024-02-04"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":" public String toString() {","lastModifiedDate":"2024-02-04"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":" return String.format(\"[D]%s (by: %s)\", super.toString(), by);","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-04"},{"lineNumber":13,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-02-04"}],"authorContributionMap":{"adamzzq":13}},{"path":"src/main/java/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"public class Event extends Task {","lastModifiedDate":"2024-02-04"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":" protected String from;","lastModifiedDate":"2024-02-04"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":" protected String to;","lastModifiedDate":"2024-02-04"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-04"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":" public Event(String description, String from, String to) {","lastModifiedDate":"2024-02-04"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" super(description);","lastModifiedDate":"2024-02-04"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":" this.from \u003d from;","lastModifiedDate":"2024-02-04"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":" this.to \u003d to;","lastModifiedDate":"2024-02-04"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-04"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-04"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":" @Override","lastModifiedDate":"2024-02-04"},{"lineNumber":12,"author":{"gitId":"adamzzq"},"content":" public String toString() {","lastModifiedDate":"2024-02-04"},{"lineNumber":13,"author":{"gitId":"adamzzq"},"content":" return String.format(\"[E]%s (from: %s to: %s)\", super.toString(), from, to);","lastModifiedDate":"2024-02-04"},{"lineNumber":14,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-04"},{"lineNumber":15,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-02-04"}],"authorContributionMap":{"adamzzq":15}},{"path":"src/main/java/ExitCommand.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"public class ExitCommand implements Command {","lastModifiedDate":"2024-01-31"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":" @Override","lastModifiedDate":"2024-01-31"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":" public boolean execute(TaskList tasks) {","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":" System.out.print(Message.EXIT_MESSAGE);","lastModifiedDate":"2024-02-04"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":" return true;","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-01-31"}],"authorContributionMap":{"adamzzq":7}},{"path":"src/main/java/ListCommand.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"public class ListCommand implements Command {","lastModifiedDate":"2024-01-31"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":" @Override","lastModifiedDate":"2024-01-31"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":" public boolean execute(TaskList tasks) {","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":" if (tasks.size() \u003e 0) {","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":" System.out.println(Message.LIST_MESSAGE_FRONT);","lastModifiedDate":"2024-02-07"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" tasks.displayAll();","lastModifiedDate":"2024-01-31"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":" System.out.println(Message.LIST_MESSAGE_END);","lastModifiedDate":"2024-02-07"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":" return false;","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-01-31"}],"authorContributionMap":{"adamzzq":11}},{"path":"src/main/java/Message.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"import java.util.Random;","lastModifiedDate":"2024-01-31"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":"public class Message {","lastModifiedDate":"2024-02-04"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":" public static final String DELIMITER \u003d \"\\n\u003e\u003d\u003d\u003d\u003d\u003e \u003e\u003d\u003d\u003d\u003d\u003e \u003e\u003d\u003d\u003d\u003d\u003e \u003e\u003d\u003d\u003d\u003d\u003e \u003e\u003d\u003d\u003d\u003d\u003e \u003e\u003d\u003d\u003d\u003d\u003e \u003e\u003d\u003d\u003d\u003d\u003e \u003e\u003d\u003d\u003d\u003d\u003e \u003e\u003d\u003d\u003d\u003d\u003e\\n\";","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" private static final String LOGO_DEFAULT \u003d \" _ \\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":" + \" /\\\\ | | \\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":" + \" / \\\\ __| | __ _ _ __ ___ \\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":" + \" / /\\\\ \\\\ / _` |/ _` | \u0027_ ` _ \\\\ \\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":" + \" / ____ \\\\ (_| | (_| | | | | | |\\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":" + \" /_/ \\\\_\\\\__,_|\\\\__,_|_| |_| |_|\\n\";","lastModifiedDate":"2024-01-31"},{"lineNumber":12,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":13,"author":{"gitId":"adamzzq"},"content":" private static final String LOGO_BOLD \u003d \" █████╗ ██████╗ █████╗ ███╗ ███╗\\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":14,"author":{"gitId":"adamzzq"},"content":" + \"██╔══██╗██╔══██╗██╔══██╗████╗ ████║\\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":15,"author":{"gitId":"adamzzq"},"content":" + \"███████║██║ ██║███████║██╔████╔██║\\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":16,"author":{"gitId":"adamzzq"},"content":" + \"██╔══██║██║ ██║██╔══██║██║╚██╔╝██║\\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":17,"author":{"gitId":"adamzzq"},"content":" + \"██║ ██║██████╔╝██║ ██║██║ ╚═╝ ██║\\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":18,"author":{"gitId":"adamzzq"},"content":" + \"╚═╝ ╚═╝╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝\\n\";","lastModifiedDate":"2024-01-31"},{"lineNumber":19,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":20,"author":{"gitId":"adamzzq"},"content":" private static final String LOGO_3D \u003d \" ________ ________ ________ _____ ______ \\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":21,"author":{"gitId":"adamzzq"},"content":" + \"|\\\\ __ \\\\|\\\\ ___ \\\\|\\\\ __ \\\\|\\\\ _ \\\\ _ \\\\ \\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":22,"author":{"gitId":"adamzzq"},"content":" + \"\\\\ \\\\ \\\\|\\\\ \\\\ \\\\ \\\\_|\\\\ \\\\ \\\\ \\\\|\\\\ \\\\ \\\\ \\\\\\\\\\\\__\\\\ \\\\ \\\\ \\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":23,"author":{"gitId":"adamzzq"},"content":" + \" \\\\ \\\\ __ \\\\ \\\\ \\\\ \\\\\\\\ \\\\ \\\\ __ \\\\ \\\\ \\\\\\\\|__| \\\\ \\\\ \\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":24,"author":{"gitId":"adamzzq"},"content":" + \" \\\\ \\\\ \\\\ \\\\ \\\\ \\\\ \\\\_\\\\\\\\ \\\\ \\\\ \\\\ \\\\ \\\\ \\\\ \\\\ \\\\ \\\\ \\\\ \\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":25,"author":{"gitId":"adamzzq"},"content":" + \" \\\\ \\\\__\\\\ \\\\__\\\\ \\\\_______\\\\ \\\\__\\\\ \\\\__\\\\ \\\\__\\\\ \\\\ \\\\__\\\\\\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":26,"author":{"gitId":"adamzzq"},"content":" + \" \\\\|__|\\\\|__|\\\\|_______|\\\\|__|\\\\|__|\\\\|__| \\\\|__|\\n\";","lastModifiedDate":"2024-01-31"},{"lineNumber":27,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":28,"author":{"gitId":"adamzzq"},"content":" private static final String GREETING \u003d DELIMITER","lastModifiedDate":"2024-01-31"},{"lineNumber":29,"author":{"gitId":"adamzzq"},"content":" + \"Greetings, human! I\u0027m Adam, your friendly chat bot.\\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":30,"author":{"gitId":"adamzzq"},"content":" + \"Ready to conquer the world of tasks together?\\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":31,"author":{"gitId":"adamzzq"},"content":" + \"Let\u0027s dive into the adventure!\\n\"","lastModifiedDate":"2024-01-31"},{"lineNumber":32,"author":{"gitId":"adamzzq"},"content":" + DELIMITER;","lastModifiedDate":"2024-01-31"},{"lineNumber":33,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":34,"author":{"gitId":"adamzzq"},"content":" private static final String[] LOGOS \u003d {LOGO_DEFAULT, LOGO_BOLD, LOGO_3D};","lastModifiedDate":"2024-02-01"},{"lineNumber":35,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":36,"author":{"gitId":"adamzzq"},"content":" // Random logo display at app start","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"adamzzq"},"content":" public static final String GREETING_MESSAGE \u003d \"Hello from\\n\" + LOGOS[new Random().nextInt(LOGOS.length)]","lastModifiedDate":"2024-02-04"},{"lineNumber":38,"author":{"gitId":"adamzzq"},"content":" + GREETING;","lastModifiedDate":"2024-02-04"},{"lineNumber":39,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":40,"author":{"gitId":"adamzzq"},"content":" public static final String EXIT_MESSAGE \u003d \"Farewell, adventurer! Until our paths cross again!\\n\";","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":42,"author":{"gitId":"adamzzq"},"content":" public static final String MARK_MESSAGE \u003d \"Ta-da! Task conquered! I\u0027ve marked this task as done:\\n\";","lastModifiedDate":"2024-01-31"},{"lineNumber":43,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":44,"author":{"gitId":"adamzzq"},"content":" public static final String UNMARK_MESSAGE \u003d \"Whoopsie-daisy! This task is back in action:\\n\";","lastModifiedDate":"2024-01-31"},{"lineNumber":45,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":46,"author":{"gitId":"adamzzq"},"content":" public static final String ERROR_MESSAGE \u003d \"Oopsie! Looks like I got tangled up in my circuits.\\n\"","lastModifiedDate":"2024-02-07"},{"lineNumber":47,"author":{"gitId":"adamzzq"},"content":" + \"Could you please try again?\";","lastModifiedDate":"2024-02-07"},{"lineNumber":48,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":49,"author":{"gitId":"adamzzq"},"content":" public static final String ADD_TASK_MESSAGE_FRONT \u003d \"Awesome sauce! Task successfully added:\\n \";","lastModifiedDate":"2024-02-07"},{"lineNumber":50,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":51,"author":{"gitId":"adamzzq"},"content":" public static final String ADD_TASK_MESSAGE_MIDDLE \u003d \"\\nYou now have a whopping \";","lastModifiedDate":"2024-02-07"},{"lineNumber":52,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":53,"author":{"gitId":"adamzzq"},"content":" public static final String ADD_TASK_MESSAGE_END \u003d \" tasks in the list. Keep \u0027em coming!\";","lastModifiedDate":"2024-02-08"},{"lineNumber":54,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":55,"author":{"gitId":"adamzzq"},"content":" public static final String LIST_MESSAGE_FRONT \u003d \"Behold, the mighty task(s) in your realm:\\n\";","lastModifiedDate":"2024-02-07"},{"lineNumber":56,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":57,"author":{"gitId":"adamzzq"},"content":" public static final String LIST_MESSAGE_END \u003d \"\\nThese tasks await your valiant efforts, noble taskmaster!\";","lastModifiedDate":"2024-02-08"},{"lineNumber":58,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-01-31"}],"authorContributionMap":{"adamzzq":58}},{"path":"src/main/java/Parser.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"import java.util.Arrays;","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":"import java.util.regex.Matcher;","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":"import java.util.regex.Pattern;","lastModifiedDate":"2024-02-07"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":"public enum Parser {","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" BYE(\"bye\"),","lastModifiedDate":"2024-02-08"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":" LIST(\"list\"),","lastModifiedDate":"2024-02-08"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":" TOGGLE(\"(mark|unmark)\\\\s(\\\\d+)\"),","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":" TODO(\"todo\\\\s(.+)\"),","lastModifiedDate":"2024-02-08"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":" DEADLINE(\"deadline\\\\s(.+)/by\\\\s(.+)\"),","lastModifiedDate":"2024-02-08"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":" EVENT(\"event\\\\s(.+)/from\\\\s(.+)/to\\\\s(.+)\");","lastModifiedDate":"2024-02-08"},{"lineNumber":12,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":13,"author":{"gitId":"adamzzq"},"content":" private final String commandRegex;","lastModifiedDate":"2024-02-08"},{"lineNumber":14,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":15,"author":{"gitId":"adamzzq"},"content":" Parser(String commandRegex) {","lastModifiedDate":"2024-02-08"},{"lineNumber":16,"author":{"gitId":"adamzzq"},"content":" this.commandRegex \u003d commandRegex;","lastModifiedDate":"2024-02-08"},{"lineNumber":17,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":18,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":19,"author":{"gitId":"adamzzq"},"content":" private String getCommandRegex() {","lastModifiedDate":"2024-02-08"},{"lineNumber":20,"author":{"gitId":"adamzzq"},"content":" return this.commandRegex;","lastModifiedDate":"2024-02-08"},{"lineNumber":21,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":22,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":23,"author":{"gitId":"adamzzq"},"content":" public static Parser analyzeInput(String input) {","lastModifiedDate":"2024-02-08"},{"lineNumber":24,"author":{"gitId":"adamzzq"},"content":" return Arrays.stream(Parser.values())","lastModifiedDate":"2024-02-08"},{"lineNumber":25,"author":{"gitId":"adamzzq"},"content":" .filter(token -\u003e input.matches(token.getCommandRegex()))","lastModifiedDate":"2024-02-08"},{"lineNumber":26,"author":{"gitId":"adamzzq"},"content":" .findFirst()","lastModifiedDate":"2024-02-08"},{"lineNumber":27,"author":{"gitId":"adamzzq"},"content":" .orElseThrow();","lastModifiedDate":"2024-02-08"},{"lineNumber":28,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":29,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":30,"author":{"gitId":"adamzzq"},"content":" public static String[] splitInput(String input) {","lastModifiedDate":"2024-02-08"},{"lineNumber":31,"author":{"gitId":"adamzzq"},"content":" String[] parsedInput \u003d {};","lastModifiedDate":"2024-02-08"},{"lineNumber":32,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"adamzzq"},"content":" Pattern eventPattern \u003d Pattern.compile(EVENT.getCommandRegex());","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"adamzzq"},"content":" Pattern deadlinePattern \u003d Pattern.compile(DEADLINE.getCommandRegex());","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"adamzzq"},"content":" Pattern todoPattern \u003d Pattern.compile(TODO.getCommandRegex());","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"adamzzq"},"content":" Pattern togglePattern \u003d Pattern.compile(TOGGLE.getCommandRegex());","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"adamzzq"},"content":" Matcher eventMatcher \u003d eventPattern.matcher(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":39,"author":{"gitId":"adamzzq"},"content":" Matcher deadlineMatcher \u003d deadlinePattern.matcher(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"adamzzq"},"content":" Matcher todoMatcher \u003d todoPattern.matcher(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"adamzzq"},"content":" Matcher toggleMatcher \u003d togglePattern.matcher(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":42,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":43,"author":{"gitId":"adamzzq"},"content":" if (eventMatcher.find()) {","lastModifiedDate":"2024-02-07"},{"lineNumber":44,"author":{"gitId":"adamzzq"},"content":" parsedInput \u003d new String[3];","lastModifiedDate":"2024-02-07"},{"lineNumber":45,"author":{"gitId":"adamzzq"},"content":" parsedInput[0] \u003d eventMatcher.group(1);","lastModifiedDate":"2024-02-07"},{"lineNumber":46,"author":{"gitId":"adamzzq"},"content":" parsedInput[1] \u003d eventMatcher.group(2);","lastModifiedDate":"2024-02-07"},{"lineNumber":47,"author":{"gitId":"adamzzq"},"content":" parsedInput[2] \u003d eventMatcher.group(3);","lastModifiedDate":"2024-02-07"},{"lineNumber":48,"author":{"gitId":"adamzzq"},"content":" } else if (deadlineMatcher.find()) {","lastModifiedDate":"2024-02-07"},{"lineNumber":49,"author":{"gitId":"adamzzq"},"content":" parsedInput \u003d new String[2];","lastModifiedDate":"2024-02-07"},{"lineNumber":50,"author":{"gitId":"adamzzq"},"content":" parsedInput[0] \u003d deadlineMatcher.group(1);","lastModifiedDate":"2024-02-07"},{"lineNumber":51,"author":{"gitId":"adamzzq"},"content":" parsedInput[1] \u003d deadlineMatcher.group(2);","lastModifiedDate":"2024-02-07"},{"lineNumber":52,"author":{"gitId":"adamzzq"},"content":" } else if (todoMatcher.find()) {","lastModifiedDate":"2024-02-07"},{"lineNumber":53,"author":{"gitId":"adamzzq"},"content":" parsedInput \u003d new String[1];","lastModifiedDate":"2024-02-07"},{"lineNumber":54,"author":{"gitId":"adamzzq"},"content":" parsedInput[0] \u003d todoMatcher.group(1);","lastModifiedDate":"2024-02-07"},{"lineNumber":55,"author":{"gitId":"adamzzq"},"content":" } else if(toggleMatcher.find()) {","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"adamzzq"},"content":" parsedInput \u003d new String[2];","lastModifiedDate":"2024-02-09"},{"lineNumber":57,"author":{"gitId":"adamzzq"},"content":" parsedInput[0] \u003d toggleMatcher.group(1);","lastModifiedDate":"2024-02-09"},{"lineNumber":58,"author":{"gitId":"adamzzq"},"content":" parsedInput[1] \u003d toggleMatcher.group(2);","lastModifiedDate":"2024-02-09"},{"lineNumber":59,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":60,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":61,"author":{"gitId":"adamzzq"},"content":" return parsedInput;","lastModifiedDate":"2024-02-07"},{"lineNumber":62,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":63,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-02-07"}],"authorContributionMap":{"adamzzq":63}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"public abstract class Task {","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":" protected String description;","lastModifiedDate":"2024-01-31"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":" protected boolean isDone;","lastModifiedDate":"2024-01-31"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":" public Task(String description) {","lastModifiedDate":"2024-01-31"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" this.description \u003d description;","lastModifiedDate":"2024-01-31"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-01-31"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":" @Override","lastModifiedDate":"2024-01-31"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":" public String toString() {","lastModifiedDate":"2024-01-31"},{"lineNumber":12,"author":{"gitId":"adamzzq"},"content":" return (this.isDone ? \"[X] \" : \"[ ] \") + this.description;","lastModifiedDate":"2024-02-07"},{"lineNumber":13,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":14,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":15,"author":{"gitId":"adamzzq"},"content":" public void setIsDone(boolean newStatus) {","lastModifiedDate":"2024-02-01"},{"lineNumber":16,"author":{"gitId":"adamzzq"},"content":" this.isDone \u003d newStatus;","lastModifiedDate":"2024-02-01"},{"lineNumber":17,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":18,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":19,"author":{"gitId":"adamzzq"},"content":" public boolean isDone() {","lastModifiedDate":"2024-02-01"},{"lineNumber":20,"author":{"gitId":"adamzzq"},"content":" return this.isDone;","lastModifiedDate":"2024-02-07"},{"lineNumber":21,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-01"},{"lineNumber":22,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-01-31"}],"authorContributionMap":{"adamzzq":22}},{"path":"src/main/java/TaskList.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"import java.util.ArrayList;","lastModifiedDate":"2024-01-31"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":"import java.util.List;","lastModifiedDate":"2024-01-31"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":"import java.util.stream.IntStream;","lastModifiedDate":"2024-01-31"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":"public class TaskList {","lastModifiedDate":"2024-01-31"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" private final List\u003cTask\u003e tasks;","lastModifiedDate":"2024-01-31"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":" public TaskList() {","lastModifiedDate":"2024-01-31"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":" this.tasks \u003d new ArrayList\u003c\u003e();","lastModifiedDate":"2024-01-31"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":12,"author":{"gitId":"adamzzq"},"content":" public Task getTask(int index) {","lastModifiedDate":"2024-01-31"},{"lineNumber":13,"author":{"gitId":"adamzzq"},"content":" return this.tasks.get(index - 1);","lastModifiedDate":"2024-01-31"},{"lineNumber":14,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":15,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":16,"author":{"gitId":"adamzzq"},"content":" public int size() {","lastModifiedDate":"2024-02-07"},{"lineNumber":17,"author":{"gitId":"adamzzq"},"content":" return this.tasks.size();","lastModifiedDate":"2024-02-07"},{"lineNumber":18,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":19,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":20,"author":{"gitId":"adamzzq"},"content":" public void addTask(Parser token, String[] parsedInput) {","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"adamzzq"},"content":" if (token \u003d\u003d Parser.TODO) {","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"adamzzq"},"content":" tasks.add(new ToDo(parsedInput[0]));","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"adamzzq"},"content":" } else if (token \u003d\u003d Parser.DEADLINE) {","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"adamzzq"},"content":" tasks.add(new Deadline(parsedInput[0], parsedInput[1]));","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"adamzzq"},"content":" } else {","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"adamzzq"},"content":" tasks.add(new Event(parsedInput[0], parsedInput[1], parsedInput[2]));","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"adamzzq"},"content":" public void displayAll() {","lastModifiedDate":"2024-01-31"},{"lineNumber":31,"author":{"gitId":"adamzzq"},"content":" IntStream.rangeClosed(1, tasks.size())","lastModifiedDate":"2024-01-31"},{"lineNumber":32,"author":{"gitId":"adamzzq"},"content":" .mapToObj(index -\u003e index + \".\" + getTask(index))","lastModifiedDate":"2024-02-04"},{"lineNumber":33,"author":{"gitId":"adamzzq"},"content":" .forEach(System.out::println);","lastModifiedDate":"2024-01-31"},{"lineNumber":34,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":35,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-01-31"}],"authorContributionMap":{"adamzzq":35}},{"path":"src/main/java/ToDo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"public class ToDo extends Task {","lastModifiedDate":"2024-02-04"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":" public ToDo(String description) {","lastModifiedDate":"2024-02-04"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":" super(description);","lastModifiedDate":"2024-02-04"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-04"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-02-04"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" @Override","lastModifiedDate":"2024-02-04"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":" public String toString() {","lastModifiedDate":"2024-02-04"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":" return \"[T]\" + super.toString();","lastModifiedDate":"2024-02-04"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-04"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-02-04"}],"authorContributionMap":{"adamzzq":10}},{"path":"src/main/java/ToggleStatusCommand.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"public class ToggleStatusCommand implements Command {","lastModifiedDate":"2024-01-31"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":" private final int index;","lastModifiedDate":"2024-01-31"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":" private final String command;","lastModifiedDate":"2024-02-01"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":" public ToggleStatusCommand(String[] inputArguments) {","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":" this.command \u003d inputArguments[0];","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":" this.index \u003d Integer.parseInt(inputArguments[1]);","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":" @Override","lastModifiedDate":"2024-01-31"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":" public boolean execute(TaskList tasks) {","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"adamzzq"},"content":" if (index \u003e 0 \u0026\u0026 index \u003c\u003d tasks.size()) {","lastModifiedDate":"2024-02-08"},{"lineNumber":13,"author":{"gitId":"adamzzq"},"content":" tasks.getTask(index).setIsDone(command.equals(\"mark\"));","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"adamzzq"},"content":" System.out.println(toggleMessage(tasks.getTask(index)));","lastModifiedDate":"2024-01-31"},{"lineNumber":15,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":16,"author":{"gitId":"adamzzq"},"content":" return false;","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":18,"author":{"gitId":"adamzzq"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":19,"author":{"gitId":"adamzzq"},"content":" private String toggleMessage(Task task) {","lastModifiedDate":"2024-01-31"},{"lineNumber":20,"author":{"gitId":"adamzzq"},"content":" return (task.isDone() ? Message.MARK_MESSAGE : Message.UNMARK_MESSAGE)","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"adamzzq"},"content":" + \" \" + task;","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"adamzzq"},"content":" }","lastModifiedDate":"2024-01-31"},{"lineNumber":23,"author":{"gitId":"adamzzq"},"content":"}","lastModifiedDate":"2024-01-31"}],"authorContributionMap":{"adamzzq":23}},{"path":"text-ui-test/input.txt","fileType":"txt","lines":[{"lineNumber":1,"author":{"gitId":"adamzzq"},"content":"hello","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"adamzzq"},"content":"todo sleep for 8 hours","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"adamzzq"},"content":"deadline wake up /by 8:00AM tmr","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"adamzzq"},"content":"event exercise/from tmr /to 1st Aug. 2024","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"adamzzq"},"content":"todo jaer09549)(0","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"adamzzq"},"content":"list","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"adamzzq"},"content":"mark 1","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"adamzzq"},"content":"unmark 1","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"adamzzq"},"content":"mark 99","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"adamzzq"},"content":"mark -1","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"adamzzq"},"content":"unmark 0","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"adamzzq"},"content":"unmark 99","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"adamzzq"},"content":"todo borrow book","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"adamzzq"},"content":"list","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"adamzzq"},"content":"deadline sleep /by 12 tonight","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"adamzzq"},"content":"event sleep /from 12am /to 9a.m. 09/02/2024","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"adamzzq"},"content":"deadline sleep /by 12 tonight","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"adamzzq"},"content":"event sleep /from 12am /to 9a.m. 09/02/2024","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"adamzzq"},"content":"list","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"adamzzq"},"content":"bye","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"adamzzq":20}},{"path":"text-ui-test/runtest.bat","fileType":"bat","lines":[{"lineNumber":1,"author":{"gitId":"-"},"content":"@ECHO OFF","lastModifiedDate":"2020-05-25"},{"lineNumber":2,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":3,"author":{"gitId":"-"},"content":"REM create bin directory if it doesn\u0027t exist","lastModifiedDate":"2020-05-25"},{"lineNumber":4,"author":{"gitId":"-"},"content":"if not exist ..\\bin mkdir ..\\bin","lastModifiedDate":"2020-05-25"},{"lineNumber":5,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":6,"author":{"gitId":"-"},"content":"REM delete output from previous run","lastModifiedDate":"2020-05-25"},{"lineNumber":7,"author":{"gitId":"-"},"content":"if exist ACTUAL.TXT del ACTUAL.TXT","lastModifiedDate":"2020-08-25"},{"lineNumber":8,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":9,"author":{"gitId":"-"},"content":"REM compile the code into the bin folder","lastModifiedDate":"2020-05-25"},{"lineNumber":10,"author":{"gitId":"-"},"content":"javac -cp ..\\src\\main\\java -Xlint:none -d ..\\bin ..\\src\\main\\java\\*.java","lastModifiedDate":"2020-08-25"},{"lineNumber":11,"author":{"gitId":"-"},"content":"IF ERRORLEVEL 1 (","lastModifiedDate":"2020-05-25"},{"lineNumber":12,"author":{"gitId":"-"},"content":" echo ********** BUILD FAILURE **********","lastModifiedDate":"2020-05-25"},{"lineNumber":13,"author":{"gitId":"-"},"content":" exit /b 1","lastModifiedDate":"2020-05-25"},{"lineNumber":14,"author":{"gitId":"-"},"content":")","lastModifiedDate":"2020-05-25"},{"lineNumber":15,"author":{"gitId":"-"},"content":"REM no error here, errorlevel \u003d\u003d 0","lastModifiedDate":"2020-05-25"},{"lineNumber":16,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":17,"author":{"gitId":"-"},"content":"REM run the program, feed commands from input.txt file and redirect the output to the ACTUAL.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":18,"author":{"gitId":"adamzzq"},"content":"java -classpath ..\\bin Adam \u003c input.txt \u003e ACTUAL.TXT","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":20,"author":{"gitId":"-"},"content":"REM compare the output to the expected output","lastModifiedDate":"2020-05-25"},{"lineNumber":21,"author":{"gitId":"-"},"content":"FC ACTUAL.TXT EXPECTED.TXT","lastModifiedDate":"2020-05-25"}],"authorContributionMap":{"adamzzq":1,"-":20}},{"path":"text-ui-test/runtest.sh","fileType":"sh","lines":[{"lineNumber":1,"author":{"gitId":"-"},"content":"#!/usr/bin/env bash","lastModifiedDate":"2020-05-25"},{"lineNumber":2,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":3,"author":{"gitId":"-"},"content":"# create bin directory if it doesn\u0027t exist","lastModifiedDate":"2020-05-25"},{"lineNumber":4,"author":{"gitId":"-"},"content":"if [ ! -d \"../bin\" ]","lastModifiedDate":"2020-05-25"},{"lineNumber":5,"author":{"gitId":"-"},"content":"then","lastModifiedDate":"2020-05-25"},{"lineNumber":6,"author":{"gitId":"-"},"content":" mkdir ../bin","lastModifiedDate":"2020-05-25"},{"lineNumber":7,"author":{"gitId":"-"},"content":"fi","lastModifiedDate":"2020-05-25"},{"lineNumber":8,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":9,"author":{"gitId":"-"},"content":"# delete output from previous run","lastModifiedDate":"2020-05-25"},{"lineNumber":10,"author":{"gitId":"-"},"content":"if [ -e \"./ACTUAL.TXT\" ]","lastModifiedDate":"2020-05-25"},{"lineNumber":11,"author":{"gitId":"-"},"content":"then","lastModifiedDate":"2020-05-25"},{"lineNumber":12,"author":{"gitId":"-"},"content":" rm ACTUAL.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":13,"author":{"gitId":"-"},"content":"fi","lastModifiedDate":"2020-05-25"},{"lineNumber":14,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":15,"author":{"gitId":"-"},"content":"# compile the code into the bin folder, terminates if error occurred","lastModifiedDate":"2020-05-25"},{"lineNumber":16,"author":{"gitId":"-"},"content":"if ! javac -cp ../src/main/java -Xlint:none -d ../bin ../src/main/java/*.java","lastModifiedDate":"2020-08-25"},{"lineNumber":17,"author":{"gitId":"-"},"content":"then","lastModifiedDate":"2020-05-25"},{"lineNumber":18,"author":{"gitId":"-"},"content":" echo \"********** BUILD FAILURE **********\"","lastModifiedDate":"2020-05-25"},{"lineNumber":19,"author":{"gitId":"-"},"content":" exit 1","lastModifiedDate":"2020-05-25"},{"lineNumber":20,"author":{"gitId":"-"},"content":"fi","lastModifiedDate":"2020-05-25"},{"lineNumber":21,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":22,"author":{"gitId":"-"},"content":"# run the program, feed commands from input.txt file and redirect the output to the ACTUAL.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":23,"author":{"gitId":"adamzzq"},"content":"java -classpath ../bin Adam \u003c input.txt \u003e ACTUAL.TXT","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":25,"author":{"gitId":"-"},"content":"# convert to UNIX format","lastModifiedDate":"2020-05-25"},{"lineNumber":26,"author":{"gitId":"-"},"content":"cp EXPECTED.TXT EXPECTED-UNIX.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":27,"author":{"gitId":"-"},"content":"dos2unix ACTUAL.TXT EXPECTED-UNIX.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":28,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":29,"author":{"gitId":"-"},"content":"# compare the output to the expected output","lastModifiedDate":"2020-05-25"},{"lineNumber":30,"author":{"gitId":"-"},"content":"diff ACTUAL.TXT EXPECTED-UNIX.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":31,"author":{"gitId":"-"},"content":"if [ $? -eq 0 ]","lastModifiedDate":"2020-05-25"},{"lineNumber":32,"author":{"gitId":"-"},"content":"then","lastModifiedDate":"2020-05-25"},{"lineNumber":33,"author":{"gitId":"-"},"content":" echo \"Test result: PASSED\"","lastModifiedDate":"2020-05-25"},{"lineNumber":34,"author":{"gitId":"-"},"content":" exit 0","lastModifiedDate":"2020-05-25"},{"lineNumber":35,"author":{"gitId":"-"},"content":"else","lastModifiedDate":"2020-05-25"},{"lineNumber":36,"author":{"gitId":"-"},"content":" echo \"Test result: FAILED\"","lastModifiedDate":"2020-05-25"},{"lineNumber":37,"author":{"gitId":"-"},"content":" exit 1","lastModifiedDate":"2020-05-25"},{"lineNumber":38,"author":{"gitId":"-"},"content":"fi","lastModifiedDate":"2020-05-25"}],"authorContributionMap":{"adamzzq":1,"-":37}}] diff --git a/adamzzq_ip_master/commits.json b/adamzzq_ip_master/commits.json index 9bb34787..09dc58a6 100644 --- a/adamzzq_ip_master/commits.json +++ b/adamzzq_ip_master/commits.json @@ -1 +1 @@ -{"authorDailyContributionsMap":{"adamzzq":[{"date":"2024-01-23","commitResults":[{"hash":"c4493b478af6192eda261b56c9bfdf1c948bccdf","isMergeCommit":false,"messageTitle":"Level-0: Rename to Adam, add greeting and exit","messageBody":"","tags":["Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":21,"deletions":10}}}]},{"date":"2024-01-30","commitResults":[{"hash":"630521b24ec1026ec77f1218b867bfe15740c823","isMergeCommit":false,"messageTitle":"Add echo and exit feature","messageBody":"","tags":["Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":22,"deletions":3}}},{"hash":"8aa63690eca4ebe0b98ba4d951c509ac77cd6ba2","isMergeCommit":false,"messageTitle":"Implement add and list feature","messageBody":"Add the functionality to store user inputs and display back to the user\non command in the form of an indexed list.\n","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":24,"deletions":6}}}]},{"date":"2024-01-31","commitResults":[{"hash":"9115979c5c849589f910fad95c15210e771c949c","isMergeCommit":false,"messageTitle":"Add mark and unmark feature","messageBody":"User can mark a task as done or revert back the status to not done.\nThe corresponding task and its status are displayed as an echoed\nmessage. The status of all tasks are shown in the list on command.\n","fileTypesAndContributionMap":{"java":{"insertions":140,"deletions":33}}},{"hash":"23c283ca0ecab426359979db02b4abf96a17c56b","isMergeCommit":false,"messageTitle":"Improve code quality","messageBody":"Enhance code readability through keyword changes, variable renaming and\nredundancy removal, in order to follow the coding standard.\n","fileTypesAndContributionMap":{"java":{"insertions":22,"deletions":35}}},{"hash":"9018e896e5ea3150d2df65c967609bf2723dd3a3","isMergeCommit":false,"messageTitle":"Customize chatbot prompts","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":34,"deletions":13}}}]},{"date":"2024-02-01","commitResults":[{"hash":"e70f8b6d8d1de37463481ad73a095d80e4b90cb1","isMergeCommit":false,"messageTitle":"Bug fix: Prevent incorrect task status changes","messageBody":"Ensure that mark/unmark command does not erroneously revert the status\nof a task.\n","tags":["Level-3","A-CodingStandard"],"fileTypesAndContributionMap":{"java":{"insertions":15,"deletions":11}}}]},{"date":"2024-02-04","commitResults":[{"hash":"4c730e35e6633e1913150ad34e5405b67186484b","isMergeCommit":false,"messageTitle":"Add ToDo, Deadline, Event classes","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":47,"deletions":8}}}]},{"date":"2024-02-07","commitResults":[{"hash":"4ad4c04883c42b549a5a0ea57df8c77f35570c85","isMergeCommit":false,"messageTitle":"Implement Todo, Event, Deadline functionalities","messageBody":"User can add tasks with starting and ending time as events, with only\nending time as deadlines, and without starting/ending time as todos\n","fileTypesAndContributionMap":{"java":{"insertions":81,"deletions":19}}},{"hash":"72eabffe52d32270eadff3f00ac27a65bbeb11e1","isMergeCommit":false,"messageTitle":"Add minimal exception handling in Adam","messageBody":"Wrap the returned object of error-prone methods in Optional\u003c\u003e. This is\nto deal with the removal of the add task feature previously implemented\nwhich accepts any inputs as tasks.\n","fileTypesAndContributionMap":{"java":{"insertions":9,"deletions":3}}},{"hash":"4322e385cc98bbb0475fcecb4818df707ba70389","isMergeCommit":false,"messageTitle":"Enhance: Customize messages","messageBody":"Inject humor into response messages for list and add task commands.\n","fileTypesAndContributionMap":{"java":{"insertions":19,"deletions":3}}},{"hash":"c955de0d5912399768dae1dfbcec942e0ff64e34","isMergeCommit":false,"messageTitle":"Refactor: Rename variables to enhance code readability","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":6,"deletions":6}}}]},{"date":"2024-02-08","commitResults":[{"hash":"5f5c3c2de072d1d7018f2cd26375bcf1afac8499","isMergeCommit":false,"messageTitle":"Reconstruct Parser as enum and restructure related classes","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":55,"deletions":36}}},{"hash":"d673331b87d39a23077098a886de63b10c86ec2e","isMergeCommit":false,"messageTitle":"Remove redundant import statements and unused variables","messageBody":"","tags":["Level-4","A-CodeQuality"],"fileTypesAndContributionMap":{"java":{"insertions":4,"deletions":9}}}]},{"date":"2024-02-09","commitResults":[{"hash":"4e634e8fad27e4f1b1a628010655ad0ee48da9a0","isMergeCommit":false,"messageTitle":"Configure text-ui testing","messageBody":"* rename Duke to Adam in the bash script\n* updated input and expected output\n","tags":["A-TextUiTesting"],"fileTypesAndContributionMap":{"txt":{"insertions":20,"deletions":0},"bat":{"insertions":1,"deletions":1},"sh":{"insertions":1,"deletions":1}}}]}]},"authorFileTypeContributionMap":{"adamzzq":{"java":314,"md":0,"fxml":0,"sh":1,"bat":1,"gradle":0,"txt":20}},"authorContributionVariance":{"adamzzq":4258.6855},"authorDisplayNameMap":{"adamzzq":"CS2113-F14-2 ZENG..HEQI"}} +{"authorDailyContributionsMap":{"adamzzq":[{"date":"2024-01-23","commitResults":[{"hash":"c4493b478af6192eda261b56c9bfdf1c948bccdf","isMergeCommit":false,"messageTitle":"Level-0: Rename to Adam, add greeting and exit","messageBody":"","tags":["Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":21,"deletions":10}}}]},{"date":"2024-01-30","commitResults":[{"hash":"630521b24ec1026ec77f1218b867bfe15740c823","isMergeCommit":false,"messageTitle":"Add echo and exit feature","messageBody":"","tags":["Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":22,"deletions":3}}},{"hash":"8aa63690eca4ebe0b98ba4d951c509ac77cd6ba2","isMergeCommit":false,"messageTitle":"Implement add and list feature","messageBody":"Add the functionality to store user inputs and display back to the user\non command in the form of an indexed list.\n","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":24,"deletions":6}}}]},{"date":"2024-01-31","commitResults":[{"hash":"9115979c5c849589f910fad95c15210e771c949c","isMergeCommit":false,"messageTitle":"Add mark and unmark feature","messageBody":"User can mark a task as done or revert back the status to not done.\nThe corresponding task and its status are displayed as an echoed\nmessage. The status of all tasks are shown in the list on command.\n","fileTypesAndContributionMap":{"java":{"insertions":140,"deletions":33}}},{"hash":"23c283ca0ecab426359979db02b4abf96a17c56b","isMergeCommit":false,"messageTitle":"Improve code quality","messageBody":"Enhance code readability through keyword changes, variable renaming and\nredundancy removal, in order to follow the coding standard.\n","fileTypesAndContributionMap":{"java":{"insertions":22,"deletions":35}}},{"hash":"9018e896e5ea3150d2df65c967609bf2723dd3a3","isMergeCommit":false,"messageTitle":"Customize chatbot prompts","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":34,"deletions":13}}}]},{"date":"2024-02-01","commitResults":[{"hash":"e70f8b6d8d1de37463481ad73a095d80e4b90cb1","isMergeCommit":false,"messageTitle":"Bug fix: Prevent incorrect task status changes","messageBody":"Ensure that mark/unmark command does not erroneously revert the status\nof a task.\n","tags":["Level-3","A-CodingStandard"],"fileTypesAndContributionMap":{"java":{"insertions":15,"deletions":11}}}]},{"date":"2024-02-04","commitResults":[{"hash":"4c730e35e6633e1913150ad34e5405b67186484b","isMergeCommit":false,"messageTitle":"Add ToDo, Deadline, Event classes","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":47,"deletions":8}}}]},{"date":"2024-02-07","commitResults":[{"hash":"4ad4c04883c42b549a5a0ea57df8c77f35570c85","isMergeCommit":false,"messageTitle":"Implement Todo, Event, Deadline functionalities","messageBody":"User can add tasks with starting and ending time as events, with only\nending time as deadlines, and without starting/ending time as todos\n","fileTypesAndContributionMap":{"java":{"insertions":81,"deletions":19}}},{"hash":"72eabffe52d32270eadff3f00ac27a65bbeb11e1","isMergeCommit":false,"messageTitle":"Add minimal exception handling in Adam","messageBody":"Wrap the returned object of error-prone methods in Optional\u003c\u003e. This is\nto deal with the removal of the add task feature previously implemented\nwhich accepts any inputs as tasks.\n","fileTypesAndContributionMap":{"java":{"insertions":9,"deletions":3}}},{"hash":"4322e385cc98bbb0475fcecb4818df707ba70389","isMergeCommit":false,"messageTitle":"Enhance: Customize messages","messageBody":"Inject humor into response messages for list and add task commands.\n","fileTypesAndContributionMap":{"java":{"insertions":19,"deletions":3}}},{"hash":"c955de0d5912399768dae1dfbcec942e0ff64e34","isMergeCommit":false,"messageTitle":"Refactor: Rename variables to enhance code readability","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":6,"deletions":6}}}]},{"date":"2024-02-08","commitResults":[{"hash":"5f5c3c2de072d1d7018f2cd26375bcf1afac8499","isMergeCommit":false,"messageTitle":"Reconstruct Parser as enum and restructure related classes","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":55,"deletions":36}}},{"hash":"d673331b87d39a23077098a886de63b10c86ec2e","isMergeCommit":false,"messageTitle":"Remove redundant import statements and unused variables","messageBody":"","tags":["Level-4"],"fileTypesAndContributionMap":{"java":{"insertions":4,"deletions":9}}}]},{"date":"2024-02-09","commitResults":[{"hash":"4e634e8fad27e4f1b1a628010655ad0ee48da9a0","isMergeCommit":false,"messageTitle":"Configure text-ui testing","messageBody":"* rename Duke to Adam in the bash script\n* updated input and expected output\n","tags":["A-TextUiTesting"],"fileTypesAndContributionMap":{"txt":{"insertions":20,"deletions":0},"bat":{"insertions":1,"deletions":1},"sh":{"insertions":1,"deletions":1}}},{"hash":"af354a7c8615facac6084689429d0e8894a77c9e","isMergeCommit":false,"messageTitle":"Refactor code according to reviews","messageBody":"* encapsulate scanner in CommandGenerator.java instead of Adam.java, so\nit can be closed properly\n* deprecate TaskGenerator.java; make generate() a method of TaskList\n* use Parser enum to generate new Task to avoid comparing array length\nwhich is not open to extension\n* split long statements into multiple lines to improve readability\n","fileTypesAndContributionMap":{"java":{"insertions":49,"deletions":40}}},{"hash":"79018789af0673833a458b649d0dfdba93d52139","isMergeCommit":false,"messageTitle":"Refactor: Correct input reading logic","messageBody":"* Restore Scanner to Adam.java from CommandGenerator.java, because it\nis more logical to read input in the main method. CommandGenerator\nshould focus on its own job in creating new instances of commands\n* Use exit flag to terminate loop and exit App, whereby scanner is\nproperly closed\n* Command.execute() returns boolean to indicate whether to exit loop\n","tags":["A-CodeQuality"],"fileTypesAndContributionMap":{"java":{"insertions":29,"deletions":19}}}]}]},"authorFileTypeContributionMap":{"adamzzq":{"java":333,"md":0,"fxml":0,"sh":1,"bat":1,"gradle":0,"txt":20}},"authorContributionVariance":{"adamzzq":4965.482},"authorDisplayNameMap":{"adamzzq":"CS2113-F14-2 ZENG..HEQI"}} diff --git a/alvinnnnnnnnnn_ip_master/authorship.json b/alvinnnnnnnnnn_ip_master/authorship.json index fc339785..49707c7e 100644 --- a/alvinnnnnnnnnn_ip_master/authorship.json +++ b/alvinnnnnnnnnn_ip_master/authorship.json @@ -1 +1 @@ -[{"path":"src/main/java/Wongster.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"alvinnnnnnnnnn"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-01-30"},{"lineNumber":2,"author":{"gitId":"alvinnnnnnnnnn"},"content":"import java.util.Arrays;","lastModifiedDate":"2024-02-06"},{"lineNumber":3,"author":{"gitId":"alvinnnnnnnnnn"},"content":"class Task {","lastModifiedDate":"2024-02-06"},{"lineNumber":4,"author":{"gitId":"alvinnnnnnnnnn"},"content":" protected String description;","lastModifiedDate":"2024-02-06"},{"lineNumber":5,"author":{"gitId":"alvinnnnnnnnnn"},"content":" protected boolean isDone;","lastModifiedDate":"2024-02-06"},{"lineNumber":6,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public Task(String description) {","lastModifiedDate":"2024-02-06"},{"lineNumber":7,"author":{"gitId":"alvinnnnnnnnnn"},"content":" this.description \u003d description;","lastModifiedDate":"2024-02-06"},{"lineNumber":8,"author":{"gitId":"alvinnnnnnnnnn"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-06"},{"lineNumber":9,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":10,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public String getStatusIcon() {","lastModifiedDate":"2024-02-06"},{"lineNumber":11,"author":{"gitId":"alvinnnnnnnnnn"},"content":" return (isDone ? \"[X]\" : \"[ ]\");","lastModifiedDate":"2024-02-06"},{"lineNumber":12,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":13,"author":{"gitId":"alvinnnnnnnnnn"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":14,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public void markList() {","lastModifiedDate":"2024-02-06"},{"lineNumber":15,"author":{"gitId":"alvinnnnnnnnnn"},"content":" this.isDone \u003d true;","lastModifiedDate":"2024-02-06"},{"lineNumber":16,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":17,"author":{"gitId":"alvinnnnnnnnnn"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":18,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public void unmarkList() {","lastModifiedDate":"2024-02-06"},{"lineNumber":19,"author":{"gitId":"alvinnnnnnnnnn"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-06"},{"lineNumber":20,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":21,"author":{"gitId":"alvinnnnnnnnnn"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":22,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public String getDescription() {","lastModifiedDate":"2024-02-06"},{"lineNumber":23,"author":{"gitId":"alvinnnnnnnnnn"},"content":" return description;","lastModifiedDate":"2024-02-06"},{"lineNumber":24,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":25,"author":{"gitId":"alvinnnnnnnnnn"},"content":"}","lastModifiedDate":"2024-01-30"},{"lineNumber":26,"author":{"gitId":"alvinnnnnnnnnn"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":27,"author":{"gitId":"alvinnnnnnnnnn"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":28,"author":{"gitId":"alvinnnnnnnnnn"},"content":"class ToDo extends Task {","lastModifiedDate":"2024-02-06"},{"lineNumber":29,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public ToDo(String description) {","lastModifiedDate":"2024-02-06"},{"lineNumber":30,"author":{"gitId":"alvinnnnnnnnnn"},"content":" super(description);","lastModifiedDate":"2024-02-06"},{"lineNumber":31,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":32,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public String toString() {","lastModifiedDate":"2024-02-06"},{"lineNumber":33,"author":{"gitId":"alvinnnnnnnnnn"},"content":" return \"[T]\" + super.getStatusIcon() + \" \" + super.getDescription();","lastModifiedDate":"2024-02-06"},{"lineNumber":34,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":35,"author":{"gitId":"alvinnnnnnnnnn"},"content":"}","lastModifiedDate":"2024-01-30"},{"lineNumber":36,"author":{"gitId":"alvinnnnnnnnnn"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":37,"author":{"gitId":"alvinnnnnnnnnn"},"content":"class Event extends Task {","lastModifiedDate":"2024-02-06"},{"lineNumber":38,"author":{"gitId":"alvinnnnnnnnnn"},"content":" protected String from;","lastModifiedDate":"2024-02-06"},{"lineNumber":39,"author":{"gitId":"alvinnnnnnnnnn"},"content":" protected String to;","lastModifiedDate":"2024-02-06"},{"lineNumber":40,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public Event(String description, String from, String to) {","lastModifiedDate":"2024-02-06"},{"lineNumber":41,"author":{"gitId":"alvinnnnnnnnnn"},"content":" super(description);","lastModifiedDate":"2024-02-06"},{"lineNumber":42,"author":{"gitId":"alvinnnnnnnnnn"},"content":" this.from \u003d from;","lastModifiedDate":"2024-02-06"},{"lineNumber":43,"author":{"gitId":"alvinnnnnnnnnn"},"content":" this.to \u003d to;","lastModifiedDate":"2024-02-06"},{"lineNumber":44,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":45,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public String toString() {","lastModifiedDate":"2024-02-06"},{"lineNumber":46,"author":{"gitId":"alvinnnnnnnnnn"},"content":" return \"[E]\" + super.getStatusIcon() + \" \" + super.getDescription() + \" (from: \" + from + \" to: \" + to + \")\";","lastModifiedDate":"2024-02-06"},{"lineNumber":47,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":48,"author":{"gitId":"alvinnnnnnnnnn"},"content":"}","lastModifiedDate":"2024-01-30"},{"lineNumber":49,"author":{"gitId":"alvinnnnnnnnnn"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":50,"author":{"gitId":"alvinnnnnnnnnn"},"content":"class Deadline extends Task {","lastModifiedDate":"2024-02-06"},{"lineNumber":51,"author":{"gitId":"alvinnnnnnnnnn"},"content":" protected String by;","lastModifiedDate":"2024-02-06"},{"lineNumber":52,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public Deadline(String description, String by) {","lastModifiedDate":"2024-02-06"},{"lineNumber":53,"author":{"gitId":"alvinnnnnnnnnn"},"content":" super(description);","lastModifiedDate":"2024-02-06"},{"lineNumber":54,"author":{"gitId":"alvinnnnnnnnnn"},"content":" this.by \u003d by;","lastModifiedDate":"2024-02-06"},{"lineNumber":55,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":56,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public String toString() {","lastModifiedDate":"2024-02-06"},{"lineNumber":57,"author":{"gitId":"alvinnnnnnnnnn"},"content":" return \"[D]\" + super.getStatusIcon() + \" \" + super.getDescription() + \" (by: \" + by + \")\";","lastModifiedDate":"2024-02-06"},{"lineNumber":58,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":59,"author":{"gitId":"alvinnnnnnnnnn"},"content":"}","lastModifiedDate":"2024-02-06"},{"lineNumber":60,"author":{"gitId":"alvinnnnnnnnnn"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":61,"author":{"gitId":"alvinnnnnnnnnn"},"content":"public class Wongster {","lastModifiedDate":"2024-02-06"},{"lineNumber":62,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-02-06"},{"lineNumber":63,"author":{"gitId":"alvinnnnnnnnnn"},"content":" String name \u003d \"Wongster\";","lastModifiedDate":"2024-02-06"},{"lineNumber":64,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"Hello! I\u0027m \" + name + \"\\nWhat can I do for you?\\n\");","lastModifiedDate":"2024-02-06"},{"lineNumber":65,"author":{"gitId":"alvinnnnnnnnnn"},"content":" echo();","lastModifiedDate":"2024-02-06"},{"lineNumber":66,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":67,"author":{"gitId":"alvinnnnnnnnnn"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":68,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public static void echo() {","lastModifiedDate":"2024-02-06"},{"lineNumber":69,"author":{"gitId":"alvinnnnnnnnnn"},"content":" Task[] userList \u003d new Task[100];","lastModifiedDate":"2024-02-06"},{"lineNumber":70,"author":{"gitId":"alvinnnnnnnnnn"},"content":" int userListItems \u003d 0;","lastModifiedDate":"2024-02-06"},{"lineNumber":71,"author":{"gitId":"alvinnnnnnnnnn"},"content":" Scanner scanner \u003d new Scanner(System.in);","lastModifiedDate":"2024-01-30"},{"lineNumber":72,"author":{"gitId":"alvinnnnnnnnnn"},"content":" while (true) {","lastModifiedDate":"2024-01-30"},{"lineNumber":73,"author":{"gitId":"alvinnnnnnnnnn"},"content":" String userInput \u003d scanner.nextLine();","lastModifiedDate":"2024-01-30"},{"lineNumber":74,"author":{"gitId":"alvinnnnnnnnnn"},"content":" if (userInput.equalsIgnoreCase(\"bye\")) {","lastModifiedDate":"2024-01-30"},{"lineNumber":75,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"Bye. Hope to see you again soon!\");","lastModifiedDate":"2024-01-30"},{"lineNumber":76,"author":{"gitId":"alvinnnnnnnnnn"},"content":" break;","lastModifiedDate":"2024-01-30"},{"lineNumber":77,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":78,"author":{"gitId":"alvinnnnnnnnnn"},"content":" if (userInput.startsWith(\"mark\")) {","lastModifiedDate":"2024-02-06"},{"lineNumber":79,"author":{"gitId":"alvinnnnnnnnnn"},"content":" int index \u003d Integer.parseInt(userInput.substring(5)) - 1;","lastModifiedDate":"2024-02-06"},{"lineNumber":80,"author":{"gitId":"alvinnnnnnnnnn"},"content":" userList[index].markList();","lastModifiedDate":"2024-02-06"},{"lineNumber":81,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"Nice! I\u0027ve marked this task as done: \");","lastModifiedDate":"2024-02-06"},{"lineNumber":82,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(userList[index].getStatusIcon() + \" \" + userList[index].getDescription());","lastModifiedDate":"2024-02-06"},{"lineNumber":83,"author":{"gitId":"alvinnnnnnnnnn"},"content":" } else if (userInput.startsWith(\"unmark\")) {","lastModifiedDate":"2024-02-06"},{"lineNumber":84,"author":{"gitId":"alvinnnnnnnnnn"},"content":" int index \u003d Integer.parseInt(userInput.substring(7)) - 1;","lastModifiedDate":"2024-02-06"},{"lineNumber":85,"author":{"gitId":"alvinnnnnnnnnn"},"content":" userList[index].unmarkList();","lastModifiedDate":"2024-02-06"},{"lineNumber":86,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"OK, I\u0027ve marked this task as not done yet: \");","lastModifiedDate":"2024-02-06"},{"lineNumber":87,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(userList[index].getStatusIcon() + \" \" + userList[index].getDescription());","lastModifiedDate":"2024-02-06"},{"lineNumber":88,"author":{"gitId":"alvinnnnnnnnnn"},"content":" } else if (userInput.equalsIgnoreCase(\"list\")) {","lastModifiedDate":"2024-01-30"},{"lineNumber":89,"author":{"gitId":"alvinnnnnnnnnn"},"content":" if (userListItems \u003d\u003d 0) {","lastModifiedDate":"2024-02-06"},{"lineNumber":90,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"There are no tasks in your list. Please input at least one!\");","lastModifiedDate":"2024-02-06"},{"lineNumber":91,"author":{"gitId":"alvinnnnnnnnnn"},"content":" } else {","lastModifiedDate":"2024-01-30"},{"lineNumber":92,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"Here are tasks in your list: \\n\");","lastModifiedDate":"2024-02-06"},{"lineNumber":93,"author":{"gitId":"alvinnnnnnnnnn"},"content":" for (int i \u003d 0; i \u003c userListItems; i++) {","lastModifiedDate":"2024-02-06"},{"lineNumber":94,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println((i + 1) + \".\" + userList[i]);","lastModifiedDate":"2024-02-06"},{"lineNumber":95,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":96,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":97,"author":{"gitId":"alvinnnnnnnnnn"},"content":" } else if(userInput.startsWith(\"todo\")) {","lastModifiedDate":"2024-02-06"},{"lineNumber":98,"author":{"gitId":"alvinnnnnnnnnn"},"content":" String description \u003d userInput.substring(5).trim();","lastModifiedDate":"2024-02-06"},{"lineNumber":99,"author":{"gitId":"alvinnnnnnnnnn"},"content":" userList[userListItems] \u003d new ToDo(description);","lastModifiedDate":"2024-02-06"},{"lineNumber":100,"author":{"gitId":"alvinnnnnnnnnn"},"content":" userListItems++;","lastModifiedDate":"2024-02-06"},{"lineNumber":101,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"Got it. I\u0027ve added this task:\");","lastModifiedDate":"2024-02-06"},{"lineNumber":102,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(userList[userListItems - 1]);","lastModifiedDate":"2024-02-06"},{"lineNumber":103,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"Now you have \" + userListItems + \" tasks in the list.\");","lastModifiedDate":"2024-02-06"},{"lineNumber":104,"author":{"gitId":"alvinnnnnnnnnn"},"content":" } else if(userInput.startsWith(\"deadline\")) {","lastModifiedDate":"2024-02-06"},{"lineNumber":105,"author":{"gitId":"alvinnnnnnnnnn"},"content":" String[] parts \u003d userInput.substring(9).split(\"/by\");","lastModifiedDate":"2024-02-06"},{"lineNumber":106,"author":{"gitId":"alvinnnnnnnnnn"},"content":" String description \u003d parts[0].trim();","lastModifiedDate":"2024-02-06"},{"lineNumber":107,"author":{"gitId":"alvinnnnnnnnnn"},"content":" String by \u003d parts[1].trim();","lastModifiedDate":"2024-02-06"},{"lineNumber":108,"author":{"gitId":"alvinnnnnnnnnn"},"content":" userList[userListItems] \u003d new Deadline(description, by);","lastModifiedDate":"2024-02-06"},{"lineNumber":109,"author":{"gitId":"alvinnnnnnnnnn"},"content":" userListItems++;","lastModifiedDate":"2024-02-06"},{"lineNumber":110,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"Got it. I\u0027ve added this task:\");","lastModifiedDate":"2024-02-06"},{"lineNumber":111,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(userList[userListItems - 1]);","lastModifiedDate":"2024-02-06"},{"lineNumber":112,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"Now you have \" + userListItems + \" tasks in the list.\");","lastModifiedDate":"2024-02-06"},{"lineNumber":113,"author":{"gitId":"alvinnnnnnnnnn"},"content":" } else if(userInput.startsWith(\"event\")) {","lastModifiedDate":"2024-02-06"},{"lineNumber":114,"author":{"gitId":"alvinnnnnnnnnn"},"content":" String[] parts \u003d userInput.substring(6).split(\"/from|/to\");","lastModifiedDate":"2024-02-06"},{"lineNumber":115,"author":{"gitId":"alvinnnnnnnnnn"},"content":" String description \u003d parts[0].trim();","lastModifiedDate":"2024-02-06"},{"lineNumber":116,"author":{"gitId":"alvinnnnnnnnnn"},"content":" String from \u003d parts[1].trim();","lastModifiedDate":"2024-02-06"},{"lineNumber":117,"author":{"gitId":"alvinnnnnnnnnn"},"content":" String to \u003d parts[2].trim();","lastModifiedDate":"2024-02-06"},{"lineNumber":118,"author":{"gitId":"alvinnnnnnnnnn"},"content":" userList[userListItems] \u003d new Event(description, from, to);","lastModifiedDate":"2024-02-06"},{"lineNumber":119,"author":{"gitId":"alvinnnnnnnnnn"},"content":" userListItems++;","lastModifiedDate":"2024-02-06"},{"lineNumber":120,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"Got it. I\u0027ve added this task:\");","lastModifiedDate":"2024-02-06"},{"lineNumber":121,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(userList[userListItems - 1]);","lastModifiedDate":"2024-02-06"},{"lineNumber":122,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"Now you have \" + userListItems + \" tasks in the list.\");","lastModifiedDate":"2024-02-06"},{"lineNumber":123,"author":{"gitId":"alvinnnnnnnnnn"},"content":" } else {","lastModifiedDate":"2024-02-06"},{"lineNumber":124,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"Invalid Command, please enter a valid command.\");","lastModifiedDate":"2024-02-06"},{"lineNumber":125,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":126,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":127,"author":{"gitId":"alvinnnnnnnnnn"},"content":" scanner.close();","lastModifiedDate":"2024-01-30"},{"lineNumber":128,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":129,"author":{"gitId":"alvinnnnnnnnnn"},"content":"}","lastModifiedDate":"2024-01-30"}],"authorContributionMap":{"alvinnnnnnnnnn":129}}] +[{"path":"src/main/java/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"alvinnnnnnnnnn"},"content":"public class Deadline extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"alvinnnnnnnnnn"},"content":" protected String by;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public Deadline(String description, String by) {","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"alvinnnnnnnnnn"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"alvinnnnnnnnnn"},"content":" this.by \u003d by;","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"alvinnnnnnnnnn"},"content":" return \"[D]\" + super.getStatusIcon() + \" \" + super.getDescription() + \" (by: \" + by + \")\";","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"alvinnnnnnnnnn"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"alvinnnnnnnnnn":10}},{"path":"src/main/java/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"alvinnnnnnnnnn"},"content":"public class Event extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"alvinnnnnnnnnn"},"content":" protected String from;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"alvinnnnnnnnnn"},"content":" protected String to;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public Event(String description, String from, String to) {","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"alvinnnnnnnnnn"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"alvinnnnnnnnnn"},"content":" this.from \u003d from;","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"alvinnnnnnnnnn"},"content":" this.to \u003d to;","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"alvinnnnnnnnnn"},"content":" return \"[E]\" + super.getStatusIcon() + \" \" + super.getDescription() + \" (from: \" + from + \" to: \" + to + \")\";","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"alvinnnnnnnnnn"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"alvinnnnnnnnnn":12}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"alvinnnnnnnnnn"},"content":"public class Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"alvinnnnnnnnnn"},"content":" protected String description;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"alvinnnnnnnnnn"},"content":" protected boolean isDone;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public Task(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"alvinnnnnnnnnn"},"content":" this.description \u003d description;","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"alvinnnnnnnnnn"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public String getStatusIcon() {","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"alvinnnnnnnnnn"},"content":" return (isDone ? \"[X]\" : \"[ ]\");","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"alvinnnnnnnnnn"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public void markList() {","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"alvinnnnnnnnnn"},"content":" this.isDone \u003d true;","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"alvinnnnnnnnnn"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public void unmarkList() {","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"alvinnnnnnnnnn"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"alvinnnnnnnnnn"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public String getDescription() {","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"alvinnnnnnnnnn"},"content":" return description;","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"alvinnnnnnnnnn"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"alvinnnnnnnnnn":23}},{"path":"src/main/java/ToDo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"alvinnnnnnnnnn"},"content":"public class ToDo extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public ToDo(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"alvinnnnnnnnnn"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"alvinnnnnnnnnn"},"content":" return \"[T]\" + super.getStatusIcon() + \" \" + super.getDescription();","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"alvinnnnnnnnnn"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"alvinnnnnnnnnn":8}},{"path":"src/main/java/Wongster.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"alvinnnnnnnnnn"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-01-30"},{"lineNumber":2,"author":{"gitId":"alvinnnnnnnnnn"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":3,"author":{"gitId":"alvinnnnnnnnnn"},"content":"public class Wongster {","lastModifiedDate":"2024-02-06"},{"lineNumber":4,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-02-06"},{"lineNumber":5,"author":{"gitId":"alvinnnnnnnnnn"},"content":" String name \u003d \"Wongster\";","lastModifiedDate":"2024-02-06"},{"lineNumber":6,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"Hello! I\u0027m \" + name + \"\\nWhat can I do for you?\\n\");","lastModifiedDate":"2024-02-06"},{"lineNumber":7,"author":{"gitId":"alvinnnnnnnnnn"},"content":" echo();","lastModifiedDate":"2024-02-06"},{"lineNumber":8,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":9,"author":{"gitId":"alvinnnnnnnnnn"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":10,"author":{"gitId":"alvinnnnnnnnnn"},"content":" public static void echo() {","lastModifiedDate":"2024-02-06"},{"lineNumber":11,"author":{"gitId":"alvinnnnnnnnnn"},"content":" Task[] userList \u003d new Task[100];","lastModifiedDate":"2024-02-06"},{"lineNumber":12,"author":{"gitId":"alvinnnnnnnnnn"},"content":" int userListItems \u003d 0;","lastModifiedDate":"2024-02-06"},{"lineNumber":13,"author":{"gitId":"alvinnnnnnnnnn"},"content":" Scanner scanner \u003d new Scanner(System.in);","lastModifiedDate":"2024-01-30"},{"lineNumber":14,"author":{"gitId":"alvinnnnnnnnnn"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"alvinnnnnnnnnn"},"content":" while (true) {","lastModifiedDate":"2024-01-30"},{"lineNumber":16,"author":{"gitId":"alvinnnnnnnnnn"},"content":" String userInput \u003d scanner.nextLine();","lastModifiedDate":"2024-01-30"},{"lineNumber":17,"author":{"gitId":"alvinnnnnnnnnn"},"content":" if (userInput.equalsIgnoreCase(\"bye\")) {","lastModifiedDate":"2024-01-30"},{"lineNumber":18,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"Bye. Hope to see you again soon!\");","lastModifiedDate":"2024-01-30"},{"lineNumber":19,"author":{"gitId":"alvinnnnnnnnnn"},"content":" break;","lastModifiedDate":"2024-01-30"},{"lineNumber":20,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":21,"author":{"gitId":"alvinnnnnnnnnn"},"content":" if (userInput.startsWith(\"mark\")) {","lastModifiedDate":"2024-02-06"},{"lineNumber":22,"author":{"gitId":"alvinnnnnnnnnn"},"content":" int index \u003d Integer.parseInt(userInput.substring(5)) - 1;","lastModifiedDate":"2024-02-06"},{"lineNumber":23,"author":{"gitId":"alvinnnnnnnnnn"},"content":" userList[index].markList();","lastModifiedDate":"2024-02-06"},{"lineNumber":24,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"Nice! I\u0027ve marked this task as done: \");","lastModifiedDate":"2024-02-06"},{"lineNumber":25,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(userList[index].getStatusIcon() + \" \" + userList[index].getDescription());","lastModifiedDate":"2024-02-06"},{"lineNumber":26,"author":{"gitId":"alvinnnnnnnnnn"},"content":" } else if (userInput.startsWith(\"unmark\")) {","lastModifiedDate":"2024-02-06"},{"lineNumber":27,"author":{"gitId":"alvinnnnnnnnnn"},"content":" int index \u003d Integer.parseInt(userInput.substring(7)) - 1;","lastModifiedDate":"2024-02-06"},{"lineNumber":28,"author":{"gitId":"alvinnnnnnnnnn"},"content":" userList[index].unmarkList();","lastModifiedDate":"2024-02-06"},{"lineNumber":29,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"OK, I\u0027ve marked this task as not done yet: \");","lastModifiedDate":"2024-02-06"},{"lineNumber":30,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(userList[index].getStatusIcon() + \" \" + userList[index].getDescription());","lastModifiedDate":"2024-02-06"},{"lineNumber":31,"author":{"gitId":"alvinnnnnnnnnn"},"content":" } else if (userInput.equalsIgnoreCase(\"list\")) {","lastModifiedDate":"2024-01-30"},{"lineNumber":32,"author":{"gitId":"alvinnnnnnnnnn"},"content":" if (userListItems \u003d\u003d 0) {","lastModifiedDate":"2024-02-06"},{"lineNumber":33,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"There are no tasks in your list. Please input at least one!\");","lastModifiedDate":"2024-02-06"},{"lineNumber":34,"author":{"gitId":"alvinnnnnnnnnn"},"content":" } else {","lastModifiedDate":"2024-01-30"},{"lineNumber":35,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"Here are tasks in your list: \\n\");","lastModifiedDate":"2024-02-06"},{"lineNumber":36,"author":{"gitId":"alvinnnnnnnnnn"},"content":" for (int i \u003d 0; i \u003c userListItems; i++) {","lastModifiedDate":"2024-02-06"},{"lineNumber":37,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println((i + 1) + \".\" + userList[i]);","lastModifiedDate":"2024-02-06"},{"lineNumber":38,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":39,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":40,"author":{"gitId":"alvinnnnnnnnnn"},"content":" } else if(userInput.startsWith(\"todo\")) {","lastModifiedDate":"2024-02-06"},{"lineNumber":41,"author":{"gitId":"alvinnnnnnnnnn"},"content":" String description \u003d userInput.substring(5).trim();","lastModifiedDate":"2024-02-06"},{"lineNumber":42,"author":{"gitId":"alvinnnnnnnnnn"},"content":" userList[userListItems] \u003d new ToDo(description);","lastModifiedDate":"2024-02-06"},{"lineNumber":43,"author":{"gitId":"alvinnnnnnnnnn"},"content":" userListItems++;","lastModifiedDate":"2024-02-06"},{"lineNumber":44,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"Got it. I\u0027ve added this task:\");","lastModifiedDate":"2024-02-06"},{"lineNumber":45,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(userList[userListItems - 1]);","lastModifiedDate":"2024-02-06"},{"lineNumber":46,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"Now you have \" + userListItems + \" tasks in the list.\");","lastModifiedDate":"2024-02-06"},{"lineNumber":47,"author":{"gitId":"alvinnnnnnnnnn"},"content":" } else if(userInput.startsWith(\"deadline\")) {","lastModifiedDate":"2024-02-06"},{"lineNumber":48,"author":{"gitId":"alvinnnnnnnnnn"},"content":" String[] parts \u003d userInput.substring(9).split(\"/by\");","lastModifiedDate":"2024-02-06"},{"lineNumber":49,"author":{"gitId":"alvinnnnnnnnnn"},"content":" String description \u003d parts[0].trim();","lastModifiedDate":"2024-02-06"},{"lineNumber":50,"author":{"gitId":"alvinnnnnnnnnn"},"content":" String by \u003d parts[1].trim();","lastModifiedDate":"2024-02-06"},{"lineNumber":51,"author":{"gitId":"alvinnnnnnnnnn"},"content":" userList[userListItems] \u003d new Deadline(description, by);","lastModifiedDate":"2024-02-06"},{"lineNumber":52,"author":{"gitId":"alvinnnnnnnnnn"},"content":" userListItems++;","lastModifiedDate":"2024-02-06"},{"lineNumber":53,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"Got it. I\u0027ve added this task:\");","lastModifiedDate":"2024-02-06"},{"lineNumber":54,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(userList[userListItems - 1]);","lastModifiedDate":"2024-02-06"},{"lineNumber":55,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"Now you have \" + userListItems + \" tasks in the list.\");","lastModifiedDate":"2024-02-06"},{"lineNumber":56,"author":{"gitId":"alvinnnnnnnnnn"},"content":" } else if(userInput.startsWith(\"event\")) {","lastModifiedDate":"2024-02-06"},{"lineNumber":57,"author":{"gitId":"alvinnnnnnnnnn"},"content":" String[] parts \u003d userInput.substring(6).split(\"/from|/to\");","lastModifiedDate":"2024-02-06"},{"lineNumber":58,"author":{"gitId":"alvinnnnnnnnnn"},"content":" String description \u003d parts[0].trim();","lastModifiedDate":"2024-02-06"},{"lineNumber":59,"author":{"gitId":"alvinnnnnnnnnn"},"content":" String from \u003d parts[1].trim();","lastModifiedDate":"2024-02-06"},{"lineNumber":60,"author":{"gitId":"alvinnnnnnnnnn"},"content":" String to \u003d parts[2].trim();","lastModifiedDate":"2024-02-06"},{"lineNumber":61,"author":{"gitId":"alvinnnnnnnnnn"},"content":" userList[userListItems] \u003d new Event(description, from, to);","lastModifiedDate":"2024-02-06"},{"lineNumber":62,"author":{"gitId":"alvinnnnnnnnnn"},"content":" userListItems++;","lastModifiedDate":"2024-02-06"},{"lineNumber":63,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"Got it. I\u0027ve added this task:\");","lastModifiedDate":"2024-02-06"},{"lineNumber":64,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(userList[userListItems - 1]);","lastModifiedDate":"2024-02-06"},{"lineNumber":65,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"Now you have \" + userListItems + \" tasks in the list.\");","lastModifiedDate":"2024-02-06"},{"lineNumber":66,"author":{"gitId":"alvinnnnnnnnnn"},"content":" } else {","lastModifiedDate":"2024-02-06"},{"lineNumber":67,"author":{"gitId":"alvinnnnnnnnnn"},"content":" System.out.println(\"Invalid Command, please enter a valid command.\");","lastModifiedDate":"2024-02-06"},{"lineNumber":68,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":69,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":70,"author":{"gitId":"alvinnnnnnnnnn"},"content":" scanner.close();","lastModifiedDate":"2024-01-30"},{"lineNumber":71,"author":{"gitId":"alvinnnnnnnnnn"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":72,"author":{"gitId":"alvinnnnnnnnnn"},"content":"}","lastModifiedDate":"2024-01-30"}],"authorContributionMap":{"alvinnnnnnnnnn":72}}] diff --git a/alvinnnnnnnnnn_ip_master/commits.json b/alvinnnnnnnnnn_ip_master/commits.json index 318cc482..9d30c909 100644 --- a/alvinnnnnnnnnn_ip_master/commits.json +++ b/alvinnnnnnnnnn_ip_master/commits.json @@ -1 +1 @@ -{"authorDailyContributionsMap":{"alvinnnnnnnnnn":[{"date":"2024-01-30","commitResults":[{"hash":"e34e71c2679506f591693fc0b1e261414ffc4ec0","isMergeCommit":false,"messageTitle":"Level 0. Rename, Greet, Exit","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":9,"deletions":10}}},{"hash":"ed0edf8df4ffa68a2a43ada4fc4f709e22774748","isMergeCommit":false,"messageTitle":"Level 1. Echo","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":17,"deletions":4}}},{"hash":"13f55a484ad3647a2226590b405c263bb74b8c19","isMergeCommit":false,"messageTitle":"Level 2. Add, list","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":22,"deletions":1}}},{"hash":"44fbc544a3987f01c1c2f8936aa6c0901780a264","isMergeCommit":false,"messageTitle":"Level 3. Mark as Done","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":32,"deletions":8}}}]},{"date":"2024-02-06","commitResults":[{"hash":"97af34bc8f2362236df79c8aa855a0f904f5fd39","isMergeCommit":false,"messageTitle":"Level 4: ToDo, Event, Deadline","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":103,"deletions":41}}}]}]},"authorFileTypeContributionMap":{"alvinnnnnnnnnn":{"java":129,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"alvinnnnnnnnnn":1480.7368},"authorDisplayNameMap":{"alvinnnnnnnnnn":"CS2113-W12-2 WONG..LVIN"}} +{"authorDailyContributionsMap":{"alvinnnnnnnnnn":[{"date":"2024-01-30","commitResults":[{"hash":"e34e71c2679506f591693fc0b1e261414ffc4ec0","isMergeCommit":false,"messageTitle":"Level 0. Rename, Greet, Exit","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":9,"deletions":10}}},{"hash":"ed0edf8df4ffa68a2a43ada4fc4f709e22774748","isMergeCommit":false,"messageTitle":"Level 1. Echo","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":17,"deletions":4}}},{"hash":"13f55a484ad3647a2226590b405c263bb74b8c19","isMergeCommit":false,"messageTitle":"Level 2. Add, list","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":22,"deletions":1}}},{"hash":"44fbc544a3987f01c1c2f8936aa6c0901780a264","isMergeCommit":false,"messageTitle":"Level 3. Mark as Done","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":32,"deletions":8}}}]},{"date":"2024-02-06","commitResults":[{"hash":"97af34bc8f2362236df79c8aa855a0f904f5fd39","isMergeCommit":false,"messageTitle":"Level 4: ToDo, Event, Deadline","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":103,"deletions":41}}}]},{"date":"2024-02-09","commitResults":[{"hash":"14dfb2cb86acade3a0d1eabe2f894b9e1af19eb8","isMergeCommit":false,"messageTitle":"level 4: update","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":54,"deletions":58}}}]}]},"authorFileTypeContributionMap":{"alvinnnnnnnnnn":{"java":125,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"alvinnnnnnnnnn":1728.6715},"authorDisplayNameMap":{"alvinnnnnnnnnn":"CS2113-W12-2 WONG..LVIN"}} diff --git a/annoy-o-mus_ip_master/authorship.json b/annoy-o-mus_ip_master/authorship.json index bb4fc29f..eb2a04d8 100644 --- a/annoy-o-mus_ip_master/authorship.json +++ b/annoy-o-mus_ip_master/authorship.json @@ -1 +1 @@ -[{"path":"README.md","fileType":"md","lines":[{"lineNumber":1,"author":{"gitId":"-"},"content":"# Duke project template","lastModifiedDate":"2020-05-25"},{"lineNumber":2,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":3,"author":{"gitId":"-"},"content":"This is a project template for a greenfield Java project. It\u0027s named after the Java mascot _Duke_. Given below are instructions on how to use it.","lastModifiedDate":"2020-05-25"},{"lineNumber":4,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":5,"author":{"gitId":"-"},"content":"## Setting up in Intellij","lastModifiedDate":"2020-05-25"},{"lineNumber":6,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":7,"author":{"gitId":"-"},"content":"Prerequisites: JDK 11, update Intellij to the most recent version.","lastModifiedDate":"2020-05-25"},{"lineNumber":8,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":9,"author":{"gitId":"-"},"content":"1. Open Intellij (if you are not in the welcome screen, click `File` \u003e `Close Project` to close the existing project first)","lastModifiedDate":"2021-01-17"},{"lineNumber":10,"author":{"gitId":"-"},"content":"1. Open the project into Intellij as follows:","lastModifiedDate":"2021-01-17"},{"lineNumber":11,"author":{"gitId":"-"},"content":" 1. Click `Open`.","lastModifiedDate":"2021-01-17"},{"lineNumber":12,"author":{"gitId":"-"},"content":" 1. Select the project directory, and click `OK`.","lastModifiedDate":"2021-01-17"},{"lineNumber":13,"author":{"gitId":"-"},"content":" 1. If there are any further prompts, accept the defaults.","lastModifiedDate":"2020-05-25"},{"lineNumber":14,"author":{"gitId":"-"},"content":"1. Configure the project to use **JDK 11** (not other versions) as explained in [here](https://www.jetbrains.com/help/idea/sdk.html#set-up-jdk).\u003cbr\u003e","lastModifiedDate":"2021-07-29"},{"lineNumber":15,"author":{"gitId":"-"},"content":" In the same dialog, set the **Project language level** field to the `SDK default` option.","lastModifiedDate":"2021-07-29"},{"lineNumber":16,"author":{"gitId":"annoy-o-mus"},"content":"3. After that, locate the `src/main/java/AnonBot.java` file, right-click it, and choose `Run AnonBot.main()` (if the code editor is showing compile errors, try restarting the IDE). If the setup is correct, you should see something like the below as the output:","lastModifiedDate":"2024-02-08"},{"lineNumber":17,"author":{"gitId":"-"},"content":" ```","lastModifiedDate":"2020-05-25"},{"lineNumber":18,"author":{"gitId":"-"},"content":" ____ _ ","lastModifiedDate":"2020-05-25"},{"lineNumber":19,"author":{"gitId":"annoy-o-mus"},"content":" | _ \\ | | ","lastModifiedDate":"2024-02-02"},{"lineNumber":20,"author":{"gitId":"annoy-o-mus"},"content":" __ _ _ __ ___ _ __ | |_) | ___ | |_ ","lastModifiedDate":"2024-02-02"},{"lineNumber":21,"author":{"gitId":"annoy-o-mus"},"content":" / _` | \u0027_ \\ / _ \\| \u0027_ \\| _ \u003c / _ \\| __|","lastModifiedDate":"2024-02-02"},{"lineNumber":22,"author":{"gitId":"annoy-o-mus"},"content":" | (_| | | | | (_) | | | | |_) | (_) | |_","lastModifiedDate":"2024-02-02"},{"lineNumber":23,"author":{"gitId":"annoy-o-mus"},"content":" \\__,_|_| |_|\\___/|_| |_|____/ \\___/ \\__|","lastModifiedDate":"2024-02-02"},{"lineNumber":24,"author":{"gitId":"-"},"content":" ```","lastModifiedDate":"2020-05-25"}],"authorContributionMap":{"annoy-o-mus":6,"-":18}},{"path":"src/main/java/AnonBot.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"annoy-o-mus"},"content":"public class AnonBot {","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"annoy-o-mus"},"content":" private static void runMainLoop() {","lastModifiedDate":"2024-02-08"},{"lineNumber":3,"author":{"gitId":"annoy-o-mus"},"content":" Status status \u003d Status.STATUS_OK;","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"annoy-o-mus"},"content":" while (status !\u003d Status.STATUS_EXIT) {","lastModifiedDate":"2024-02-08"},{"lineNumber":5,"author":{"gitId":"annoy-o-mus"},"content":" String userInput \u003d Ui.getUserInput();","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"annoy-o-mus"},"content":" status \u003d CommandManager.processCommand(userInput);","lastModifiedDate":"2024-02-08"},{"lineNumber":7,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":8,"author":{"gitId":"-"},"content":" }","lastModifiedDate":"2019-07-29"},{"lineNumber":9,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":10,"author":{"gitId":"annoy-o-mus"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-02-02"},{"lineNumber":11,"author":{"gitId":"annoy-o-mus"},"content":" Ui.printGreetings();","lastModifiedDate":"2024-02-08"},{"lineNumber":12,"author":{"gitId":"annoy-o-mus"},"content":" runMainLoop();","lastModifiedDate":"2024-02-08"},{"lineNumber":13,"author":{"gitId":"annoy-o-mus"},"content":" Ui.printGoodbye();","lastModifiedDate":"2024-02-08"},{"lineNumber":14,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":15,"author":{"gitId":"-"},"content":"}","lastModifiedDate":"2019-07-29"}],"authorContributionMap":{"annoy-o-mus":13,"-":2}},{"path":"src/main/java/CommandManager.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"annoy-o-mus"},"content":"import misc.Parser;","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"annoy-o-mus"},"content":"import task.Task.TaskType;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"annoy-o-mus"},"content":"import task.TaskManager;","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":5,"author":{"gitId":"annoy-o-mus"},"content":"public class CommandManager {","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-08"},{"lineNumber":7,"author":{"gitId":"annoy-o-mus"},"content":" * Takes user inputs as commands and process them.","lastModifiedDate":"2024-02-08"},{"lineNumber":8,"author":{"gitId":"annoy-o-mus"},"content":" * If the input is not one of the supported commands below, NO new task will be created.","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"annoy-o-mus"},"content":" * Tasks are NOT saved when the program exits.","lastModifiedDate":"2024-02-08"},{"lineNumber":10,"author":{"gitId":"annoy-o-mus"},"content":" * Possible commands:","lastModifiedDate":"2024-02-08"},{"lineNumber":11,"author":{"gitId":"annoy-o-mus"},"content":" * 1. `bye`, `exit` - Exits the program.","lastModifiedDate":"2024-02-08"},{"lineNumber":12,"author":{"gitId":"annoy-o-mus"},"content":" * 2. `list` - Lists out all the tasks.","lastModifiedDate":"2024-02-08"},{"lineNumber":13,"author":{"gitId":"annoy-o-mus"},"content":" * 3. `mark \u003ctask_number\u003e - Marks specific task as done.","lastModifiedDate":"2024-02-08"},{"lineNumber":14,"author":{"gitId":"annoy-o-mus"},"content":" * 4. `unmark` \u003ctask_number\u003e - Marks specific task as undone.","lastModifiedDate":"2024-02-08"},{"lineNumber":15,"author":{"gitId":"annoy-o-mus"},"content":" * 5. `todo` \u003cdescription\u003e - Creates a new todo task.","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"annoy-o-mus"},"content":" * 6. `deadline` \u003cdescription\u003e - Creates a new deadline task.","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"annoy-o-mus"},"content":" * 7. `event` \u003cdescription\u003e - Creates a new event task.","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-08"},{"lineNumber":19,"author":{"gitId":"annoy-o-mus"},"content":" public static Status processCommand(String userInput) {","lastModifiedDate":"2024-02-08"},{"lineNumber":20,"author":{"gitId":"annoy-o-mus"},"content":" if (Parser.isUserInputEmpty(userInput)){","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Empty input\");","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"annoy-o-mus"},"content":" return Status.STATUS_OK;","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"annoy-o-mus"},"content":" String command \u003d Parser.getCommand(userInput);","lastModifiedDate":"2024-02-08"},{"lineNumber":26,"author":{"gitId":"annoy-o-mus"},"content":" String argument \u003d Parser.getCommandArgument(userInput);","lastModifiedDate":"2024-02-08"},{"lineNumber":27,"author":{"gitId":"annoy-o-mus"},"content":" int taskNumber;","lastModifiedDate":"2024-02-08"},{"lineNumber":28,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"annoy-o-mus"},"content":" switch (command) {","lastModifiedDate":"2024-02-08"},{"lineNumber":30,"author":{"gitId":"annoy-o-mus"},"content":" case \"exit\":","lastModifiedDate":"2024-02-08"},{"lineNumber":31,"author":{"gitId":"annoy-o-mus"},"content":" // fallthrough","lastModifiedDate":"2024-02-08"},{"lineNumber":32,"author":{"gitId":"annoy-o-mus"},"content":" case \"bye\":","lastModifiedDate":"2024-02-08"},{"lineNumber":33,"author":{"gitId":"annoy-o-mus"},"content":" return Status.STATUS_EXIT;","lastModifiedDate":"2024-02-08"},{"lineNumber":34,"author":{"gitId":"annoy-o-mus"},"content":" case \"list\":","lastModifiedDate":"2024-02-08"},{"lineNumber":35,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(Ui.SECTION_BAR);","lastModifiedDate":"2024-02-08"},{"lineNumber":36,"author":{"gitId":"annoy-o-mus"},"content":" TaskManager.printTaskList();","lastModifiedDate":"2024-02-08"},{"lineNumber":37,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(Ui.SECTION_BAR + \"\\n\");","lastModifiedDate":"2024-02-08"},{"lineNumber":38,"author":{"gitId":"annoy-o-mus"},"content":" return Status.STATUS_OK;","lastModifiedDate":"2024-02-08"},{"lineNumber":39,"author":{"gitId":"annoy-o-mus"},"content":" case \"mark\":","lastModifiedDate":"2024-02-08"},{"lineNumber":40,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(Ui.SECTION_BAR);","lastModifiedDate":"2024-02-08"},{"lineNumber":41,"author":{"gitId":"annoy-o-mus"},"content":" if (Parser.isValidTaskNumberString(argument)){","lastModifiedDate":"2024-02-09"},{"lineNumber":42,"author":{"gitId":"annoy-o-mus"},"content":" taskNumber \u003d Parser.getTaskNumberFromString(argument);","lastModifiedDate":"2024-02-09"},{"lineNumber":43,"author":{"gitId":"annoy-o-mus"},"content":" TaskManager.markTaskAsDone(taskNumber);","lastModifiedDate":"2024-02-08"},{"lineNumber":44,"author":{"gitId":"annoy-o-mus"},"content":" } else {","lastModifiedDate":"2024-02-09"},{"lineNumber":45,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Invalid argument for mark\");","lastModifiedDate":"2024-02-09"},{"lineNumber":46,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":47,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(Ui.SECTION_BAR + \"\\n\");","lastModifiedDate":"2024-02-08"},{"lineNumber":48,"author":{"gitId":"annoy-o-mus"},"content":" return Status.STATUS_OK;","lastModifiedDate":"2024-02-08"},{"lineNumber":49,"author":{"gitId":"annoy-o-mus"},"content":" case \"unmark\":","lastModifiedDate":"2024-02-08"},{"lineNumber":50,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(Ui.SECTION_BAR);","lastModifiedDate":"2024-02-08"},{"lineNumber":51,"author":{"gitId":"annoy-o-mus"},"content":" if (Parser.isValidTaskNumberString(argument)) {","lastModifiedDate":"2024-02-09"},{"lineNumber":52,"author":{"gitId":"annoy-o-mus"},"content":" taskNumber \u003d Parser.getTaskNumberFromString(argument);","lastModifiedDate":"2024-02-09"},{"lineNumber":53,"author":{"gitId":"annoy-o-mus"},"content":" TaskManager.markTaskAsUndone(taskNumber);","lastModifiedDate":"2024-02-08"},{"lineNumber":54,"author":{"gitId":"annoy-o-mus"},"content":" } else {","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Invalid argument for unmark\");","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":57,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(Ui.SECTION_BAR + \"\\n\");","lastModifiedDate":"2024-02-08"},{"lineNumber":58,"author":{"gitId":"annoy-o-mus"},"content":" return Status.STATUS_OK;","lastModifiedDate":"2024-02-08"},{"lineNumber":59,"author":{"gitId":"annoy-o-mus"},"content":" case \"todo\":","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(Ui.SECTION_BAR);","lastModifiedDate":"2024-02-09"},{"lineNumber":61,"author":{"gitId":"annoy-o-mus"},"content":" TaskManager.createNewTask(argument, TaskType.TODO);","lastModifiedDate":"2024-02-09"},{"lineNumber":62,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(Ui.SECTION_BAR + \"\\n\");","lastModifiedDate":"2024-02-09"},{"lineNumber":63,"author":{"gitId":"annoy-o-mus"},"content":" return Status.STATUS_OK;","lastModifiedDate":"2024-02-09"},{"lineNumber":64,"author":{"gitId":"annoy-o-mus"},"content":" case \"deadline\":","lastModifiedDate":"2024-02-09"},{"lineNumber":65,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(Ui.SECTION_BAR);","lastModifiedDate":"2024-02-09"},{"lineNumber":66,"author":{"gitId":"annoy-o-mus"},"content":" TaskManager.createNewTask(argument, TaskType.DEADLINE);","lastModifiedDate":"2024-02-09"},{"lineNumber":67,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(Ui.SECTION_BAR + \"\\n\");","lastModifiedDate":"2024-02-09"},{"lineNumber":68,"author":{"gitId":"annoy-o-mus"},"content":" return Status.STATUS_OK;","lastModifiedDate":"2024-02-09"},{"lineNumber":69,"author":{"gitId":"annoy-o-mus"},"content":" case \"event\":","lastModifiedDate":"2024-02-09"},{"lineNumber":70,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(Ui.SECTION_BAR);","lastModifiedDate":"2024-02-09"},{"lineNumber":71,"author":{"gitId":"annoy-o-mus"},"content":" TaskManager.createNewTask(argument, TaskType.EVENT);","lastModifiedDate":"2024-02-09"},{"lineNumber":72,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(Ui.SECTION_BAR + \"\\n\");","lastModifiedDate":"2024-02-09"},{"lineNumber":73,"author":{"gitId":"annoy-o-mus"},"content":" return Status.STATUS_OK;","lastModifiedDate":"2024-02-09"},{"lineNumber":74,"author":{"gitId":"annoy-o-mus"},"content":" default:","lastModifiedDate":"2024-02-08"},{"lineNumber":75,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(Ui.SECTION_BAR);","lastModifiedDate":"2024-02-08"},{"lineNumber":76,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Invalid Command.\");","lastModifiedDate":"2024-02-09"},{"lineNumber":77,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(Ui.SECTION_BAR + \"\\n\");","lastModifiedDate":"2024-02-08"},{"lineNumber":78,"author":{"gitId":"annoy-o-mus"},"content":" return Status.STATUS_OK;","lastModifiedDate":"2024-02-08"},{"lineNumber":79,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":80,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":81,"author":{"gitId":"annoy-o-mus"},"content":"}","lastModifiedDate":"2024-02-08"}],"authorContributionMap":{"annoy-o-mus":81}},{"path":"src/main/java/Status.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"annoy-o-mus"},"content":"public enum Status {","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"annoy-o-mus"},"content":" STATUS_OK, STATUS_EXIT","lastModifiedDate":"2024-02-08"},{"lineNumber":3,"author":{"gitId":"annoy-o-mus"},"content":"}","lastModifiedDate":"2024-02-08"}],"authorContributionMap":{"annoy-o-mus":3}},{"path":"src/main/java/Ui.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"annoy-o-mus"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":3,"author":{"gitId":"annoy-o-mus"},"content":"public class Ui {","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"annoy-o-mus"},"content":" // ASCII Art Generated from: https://patorjk.com/software/taag/#p\u003ddisplay\u0026f\u003dBig\u0026t\u003danonBot","lastModifiedDate":"2024-02-08"},{"lineNumber":5,"author":{"gitId":"annoy-o-mus"},"content":" public static final String LOGO \u003d \" ____ _ \\n\"","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"annoy-o-mus"},"content":" + \" | _ \\\\ | | \\n\"","lastModifiedDate":"2024-02-08"},{"lineNumber":7,"author":{"gitId":"annoy-o-mus"},"content":" + \" __ _ _ __ ___ _ __ | |_) | ___ | |_ \\n\"","lastModifiedDate":"2024-02-08"},{"lineNumber":8,"author":{"gitId":"annoy-o-mus"},"content":" + \" / _` | \u0027_ \\\\ / _ \\\\| \u0027_ \\\\| _ \u003c / _ \\\\| __|\\n\"","lastModifiedDate":"2024-02-08"},{"lineNumber":9,"author":{"gitId":"annoy-o-mus"},"content":" + \" | (_| | | | | (_) | | | | |_) | (_) | |_ \\n\"","lastModifiedDate":"2024-02-08"},{"lineNumber":10,"author":{"gitId":"annoy-o-mus"},"content":" + \" \\\\__,_|_| |_|\\\\___/|_| |_|____/ \\\\___/ \\\\__|\\n\";","lastModifiedDate":"2024-02-08"},{"lineNumber":11,"author":{"gitId":"annoy-o-mus"},"content":" public static final String SECTION_BAR \u003d \"____________________________________________________________\";","lastModifiedDate":"2024-02-08"},{"lineNumber":12,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":13,"author":{"gitId":"annoy-o-mus"},"content":" private static final Scanner userInput \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-08"},{"lineNumber":14,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":15,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-08"},{"lineNumber":16,"author":{"gitId":"annoy-o-mus"},"content":" * Prints greeting messages.","lastModifiedDate":"2024-02-08"},{"lineNumber":17,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-08"},{"lineNumber":18,"author":{"gitId":"annoy-o-mus"},"content":" public static void printGreetings() {","lastModifiedDate":"2024-02-08"},{"lineNumber":19,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(LOGO);","lastModifiedDate":"2024-02-08"},{"lineNumber":20,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(SECTION_BAR);","lastModifiedDate":"2024-02-08"},{"lineNumber":21,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Hello! I\u0027m anonBot\");","lastModifiedDate":"2024-02-08"},{"lineNumber":22,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"What can I do for you?\");","lastModifiedDate":"2024-02-08"},{"lineNumber":23,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(SECTION_BAR + \"\\n\");","lastModifiedDate":"2024-02-08"},{"lineNumber":24,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":25,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":26,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-08"},{"lineNumber":27,"author":{"gitId":"annoy-o-mus"},"content":" * Prints goodbye message.","lastModifiedDate":"2024-02-08"},{"lineNumber":28,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-08"},{"lineNumber":29,"author":{"gitId":"annoy-o-mus"},"content":" public static void printGoodbye() {","lastModifiedDate":"2024-02-08"},{"lineNumber":30,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(SECTION_BAR);","lastModifiedDate":"2024-02-08"},{"lineNumber":31,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"See ya!\");","lastModifiedDate":"2024-02-08"},{"lineNumber":32,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(SECTION_BAR);","lastModifiedDate":"2024-02-08"},{"lineNumber":33,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":34,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":35,"author":{"gitId":"annoy-o-mus"},"content":" public static String getUserInput() {","lastModifiedDate":"2024-02-08"},{"lineNumber":36,"author":{"gitId":"annoy-o-mus"},"content":" // Adapted from: https://stackoverflow.com/questions/13729294/nosuchelementexception-with-java-util-scanner","lastModifiedDate":"2024-02-08"},{"lineNumber":37,"author":{"gitId":"annoy-o-mus"},"content":" if (userInput.hasNextLine()) {","lastModifiedDate":"2024-02-08"},{"lineNumber":38,"author":{"gitId":"annoy-o-mus"},"content":" return userInput.nextLine();","lastModifiedDate":"2024-02-08"},{"lineNumber":39,"author":{"gitId":"annoy-o-mus"},"content":" } else {","lastModifiedDate":"2024-02-08"},{"lineNumber":40,"author":{"gitId":"annoy-o-mus"},"content":" return \"\";","lastModifiedDate":"2024-02-08"},{"lineNumber":41,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":42,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":43,"author":{"gitId":"annoy-o-mus"},"content":"}","lastModifiedDate":"2024-02-08"}],"authorContributionMap":{"annoy-o-mus":43}},{"path":"src/main/java/misc/Parser.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"annoy-o-mus"},"content":"package misc;","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"annoy-o-mus"},"content":"public class Parser {","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"annoy-o-mus"},"content":" public static String getCommand(String userInput) {","lastModifiedDate":"2024-02-08"},{"lineNumber":5,"author":{"gitId":"annoy-o-mus"},"content":" return userInput.split(\" \", 2)[0];","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":7,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":8,"author":{"gitId":"annoy-o-mus"},"content":" public static String getCommandArgument (String userInput) {","lastModifiedDate":"2024-02-08"},{"lineNumber":9,"author":{"gitId":"annoy-o-mus"},"content":" try{","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"annoy-o-mus"},"content":" return userInput.split(\" \", 2)[1];","lastModifiedDate":"2024-02-08"},{"lineNumber":11,"author":{"gitId":"annoy-o-mus"},"content":" } catch (ArrayIndexOutOfBoundsException e){","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"annoy-o-mus"},"content":" return \"\";","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"annoy-o-mus"},"content":" public static boolean isUserInputEmpty(String userInput){","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"annoy-o-mus"},"content":" return userInput.isEmpty();","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"annoy-o-mus"},"content":" * Checks if the command argument contains only a number of type String.","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"annoy-o-mus"},"content":" *","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"annoy-o-mus"},"content":" * @param commandArgument The argument portion of the user input.","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"annoy-o-mus"},"content":" * @return Whether the argument is a number of type String.","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"annoy-o-mus"},"content":" public static boolean isValidTaskNumberString(String commandArgument){","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"annoy-o-mus"},"content":" String[] argumentList \u003d commandArgument.split(\" \");","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"annoy-o-mus"},"content":" if (argumentList.length !\u003d 1){","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"annoy-o-mus"},"content":" return false;","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"annoy-o-mus"},"content":" try {","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"annoy-o-mus"},"content":" Integer.parseInt(commandArgument);","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"annoy-o-mus"},"content":" } catch (NumberFormatException e){","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"annoy-o-mus"},"content":" return false;","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"annoy-o-mus"},"content":" return true;","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":39,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"annoy-o-mus"},"content":" * Gets the task number by converting the string to integer type.","lastModifiedDate":"2024-02-09"},{"lineNumber":42,"author":{"gitId":"annoy-o-mus"},"content":" * Assumes that the input has been checked and is valid.","lastModifiedDate":"2024-02-09"},{"lineNumber":43,"author":{"gitId":"annoy-o-mus"},"content":" *","lastModifiedDate":"2024-02-09"},{"lineNumber":44,"author":{"gitId":"annoy-o-mus"},"content":" * @param taskNumberString The task number that is of type String.","lastModifiedDate":"2024-02-09"},{"lineNumber":45,"author":{"gitId":"annoy-o-mus"},"content":" * @return The task number of type int.","lastModifiedDate":"2024-02-09"},{"lineNumber":46,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-09"},{"lineNumber":47,"author":{"gitId":"annoy-o-mus"},"content":" public static int getTaskNumberFromString(String taskNumberString){","lastModifiedDate":"2024-02-09"},{"lineNumber":48,"author":{"gitId":"annoy-o-mus"},"content":" return Integer.parseInt(taskNumberString);","lastModifiedDate":"2024-02-09"},{"lineNumber":49,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":50,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":51,"author":{"gitId":"annoy-o-mus"},"content":" public static String parseDeadlineDescription(String rawDeadlineDescription){","lastModifiedDate":"2024-02-09"},{"lineNumber":52,"author":{"gitId":"annoy-o-mus"},"content":" String[] stringArray \u003d rawDeadlineDescription.split(\"/by\", 2);","lastModifiedDate":"2024-02-09"},{"lineNumber":53,"author":{"gitId":"annoy-o-mus"},"content":" if (stringArray.length !\u003d 2) {","lastModifiedDate":"2024-02-09"},{"lineNumber":54,"author":{"gitId":"annoy-o-mus"},"content":" return rawDeadlineDescription;","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"annoy-o-mus"},"content":" return stringArray[0] + \"(by:\" + stringArray[1] + \")\";","lastModifiedDate":"2024-02-09"},{"lineNumber":57,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":58,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":59,"author":{"gitId":"annoy-o-mus"},"content":" public static String parseEventDescription(String rawEventDescription){","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"annoy-o-mus"},"content":" String[] stringArray \u003d rawEventDescription.split(\"/from\", 2);","lastModifiedDate":"2024-02-09"},{"lineNumber":61,"author":{"gitId":"annoy-o-mus"},"content":" if (stringArray.length !\u003d 2){","lastModifiedDate":"2024-02-09"},{"lineNumber":62,"author":{"gitId":"annoy-o-mus"},"content":" return rawEventDescription;","lastModifiedDate":"2024-02-09"},{"lineNumber":63,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":64,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":65,"author":{"gitId":"annoy-o-mus"},"content":" String[] toFromArray \u003d stringArray[1].split(\"/to\", 2);","lastModifiedDate":"2024-02-09"},{"lineNumber":66,"author":{"gitId":"annoy-o-mus"},"content":" if (toFromArray.length !\u003d 2){","lastModifiedDate":"2024-02-09"},{"lineNumber":67,"author":{"gitId":"annoy-o-mus"},"content":" return rawEventDescription;","lastModifiedDate":"2024-02-09"},{"lineNumber":68,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":69,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":70,"author":{"gitId":"annoy-o-mus"},"content":" return stringArray[0] + \"(from:\" + toFromArray[0] + \"to:\" + toFromArray[1] + \")\";","lastModifiedDate":"2024-02-09"},{"lineNumber":71,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":72,"author":{"gitId":"annoy-o-mus"},"content":"}","lastModifiedDate":"2024-02-08"}],"authorContributionMap":{"annoy-o-mus":72}},{"path":"src/main/java/task/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"annoy-o-mus"},"content":"package task;","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"annoy-o-mus"},"content":"public class Deadline extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"annoy-o-mus"},"content":" public Deadline(String eventDescription, int taskNumber) {","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"annoy-o-mus"},"content":" super(eventDescription, taskNumber);","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"annoy-o-mus"},"content":" this.setTaskType(TaskType.DEADLINE);","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"annoy-o-mus"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"annoy-o-mus":8}},{"path":"src/main/java/task/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"annoy-o-mus"},"content":"package task;","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"annoy-o-mus"},"content":"public class Event extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"annoy-o-mus"},"content":" public Event(String eventDescription, int taskNumber) {","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"annoy-o-mus"},"content":" super(eventDescription, taskNumber);","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"annoy-o-mus"},"content":" this.setTaskType(TaskType.EVENT);","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"annoy-o-mus"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"annoy-o-mus":8}},{"path":"src/main/java/task/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"annoy-o-mus"},"content":"package task;","lastModifiedDate":"2024-02-02"},{"lineNumber":2,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":3,"author":{"gitId":"annoy-o-mus"},"content":"public class Task {","lastModifiedDate":"2024-02-02"},{"lineNumber":4,"author":{"gitId":"annoy-o-mus"},"content":" public enum TaskType {","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"annoy-o-mus"},"content":" TODO, DEADLINE, EVENT,","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"annoy-o-mus"},"content":" INVALID","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"annoy-o-mus"},"content":" private String taskDescription;","lastModifiedDate":"2024-02-02"},{"lineNumber":10,"author":{"gitId":"annoy-o-mus"},"content":" private int taskNumber;","lastModifiedDate":"2024-02-02"},{"lineNumber":11,"author":{"gitId":"annoy-o-mus"},"content":" private boolean isTaskDone;","lastModifiedDate":"2024-02-02"},{"lineNumber":12,"author":{"gitId":"annoy-o-mus"},"content":" private TaskType taskType;","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":14,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-02"},{"lineNumber":15,"author":{"gitId":"annoy-o-mus"},"content":" * Creates a new Task.","lastModifiedDate":"2024-02-02"},{"lineNumber":16,"author":{"gitId":"annoy-o-mus"},"content":" * An associated task number is assigned to the task.","lastModifiedDate":"2024-02-02"},{"lineNumber":17,"author":{"gitId":"annoy-o-mus"},"content":" * The created Task is also added to the taskList (at the end) for tracking.","lastModifiedDate":"2024-02-02"},{"lineNumber":18,"author":{"gitId":"annoy-o-mus"},"content":" *","lastModifiedDate":"2024-02-02"},{"lineNumber":19,"author":{"gitId":"annoy-o-mus"},"content":" * @param taskDescription Description of the task.","lastModifiedDate":"2024-02-02"},{"lineNumber":20,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-02"},{"lineNumber":21,"author":{"gitId":"annoy-o-mus"},"content":" public Task(String taskDescription, int taskNumber) {","lastModifiedDate":"2024-02-08"},{"lineNumber":22,"author":{"gitId":"annoy-o-mus"},"content":" setTaskDescription(taskDescription);","lastModifiedDate":"2024-02-02"},{"lineNumber":23,"author":{"gitId":"annoy-o-mus"},"content":" setTaskNumber(taskNumber);","lastModifiedDate":"2024-02-08"},{"lineNumber":24,"author":{"gitId":"annoy-o-mus"},"content":" setTaskStatus(false);","lastModifiedDate":"2024-02-02"},{"lineNumber":25,"author":{"gitId":"annoy-o-mus"},"content":" setTaskType(TaskType.INVALID);","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":27,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":28,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-02"},{"lineNumber":29,"author":{"gitId":"annoy-o-mus"},"content":" * Gets the task description.","lastModifiedDate":"2024-02-02"},{"lineNumber":30,"author":{"gitId":"annoy-o-mus"},"content":" *","lastModifiedDate":"2024-02-02"},{"lineNumber":31,"author":{"gitId":"annoy-o-mus"},"content":" * @return The task description.","lastModifiedDate":"2024-02-02"},{"lineNumber":32,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-02"},{"lineNumber":33,"author":{"gitId":"annoy-o-mus"},"content":" public String getTaskDescription() {","lastModifiedDate":"2024-02-02"},{"lineNumber":34,"author":{"gitId":"annoy-o-mus"},"content":" return taskDescription;","lastModifiedDate":"2024-02-02"},{"lineNumber":35,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":36,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":37,"author":{"gitId":"annoy-o-mus"},"content":" public int getTaskNumber() {","lastModifiedDate":"2024-02-08"},{"lineNumber":38,"author":{"gitId":"annoy-o-mus"},"content":" return taskNumber;","lastModifiedDate":"2024-02-08"},{"lineNumber":39,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":40,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":41,"author":{"gitId":"annoy-o-mus"},"content":" public boolean isTaskDone() {","lastModifiedDate":"2024-02-08"},{"lineNumber":42,"author":{"gitId":"annoy-o-mus"},"content":" return isTaskDone;","lastModifiedDate":"2024-02-08"},{"lineNumber":43,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":44,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":45,"author":{"gitId":"annoy-o-mus"},"content":" public TaskType getTaskType() {","lastModifiedDate":"2024-02-09"},{"lineNumber":46,"author":{"gitId":"annoy-o-mus"},"content":" return taskType;","lastModifiedDate":"2024-02-09"},{"lineNumber":47,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":48,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":49,"author":{"gitId":"annoy-o-mus"},"content":" public char getCharRepresentationOfTaskType(){","lastModifiedDate":"2024-02-09"},{"lineNumber":50,"author":{"gitId":"annoy-o-mus"},"content":" switch (getTaskType()){","lastModifiedDate":"2024-02-09"},{"lineNumber":51,"author":{"gitId":"annoy-o-mus"},"content":" case TODO:","lastModifiedDate":"2024-02-09"},{"lineNumber":52,"author":{"gitId":"annoy-o-mus"},"content":" return \u0027T\u0027;","lastModifiedDate":"2024-02-09"},{"lineNumber":53,"author":{"gitId":"annoy-o-mus"},"content":" case EVENT:","lastModifiedDate":"2024-02-09"},{"lineNumber":54,"author":{"gitId":"annoy-o-mus"},"content":" return \u0027E\u0027;","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"annoy-o-mus"},"content":" case DEADLINE:","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"annoy-o-mus"},"content":" return \u0027D\u0027;","lastModifiedDate":"2024-02-09"},{"lineNumber":57,"author":{"gitId":"annoy-o-mus"},"content":" case INVALID:","lastModifiedDate":"2024-02-09"},{"lineNumber":58,"author":{"gitId":"annoy-o-mus"},"content":" return \u0027I\u0027;","lastModifiedDate":"2024-02-09"},{"lineNumber":59,"author":{"gitId":"annoy-o-mus"},"content":" default:","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"annoy-o-mus"},"content":" return \u0027?\u0027;","lastModifiedDate":"2024-02-09"},{"lineNumber":61,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":62,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":63,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":64,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-02"},{"lineNumber":65,"author":{"gitId":"annoy-o-mus"},"content":" * Sets the task description.","lastModifiedDate":"2024-02-02"},{"lineNumber":66,"author":{"gitId":"annoy-o-mus"},"content":" *","lastModifiedDate":"2024-02-02"},{"lineNumber":67,"author":{"gitId":"annoy-o-mus"},"content":" * @param taskDescription Description of the task.","lastModifiedDate":"2024-02-02"},{"lineNumber":68,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-02"},{"lineNumber":69,"author":{"gitId":"annoy-o-mus"},"content":" private void setTaskDescription(String taskDescription) {","lastModifiedDate":"2024-02-02"},{"lineNumber":70,"author":{"gitId":"annoy-o-mus"},"content":" this.taskDescription \u003d taskDescription;","lastModifiedDate":"2024-02-02"},{"lineNumber":71,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":72,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":73,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-02"},{"lineNumber":74,"author":{"gitId":"annoy-o-mus"},"content":" * Give the newly created task an associated task number.","lastModifiedDate":"2024-02-02"},{"lineNumber":75,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-02"},{"lineNumber":76,"author":{"gitId":"annoy-o-mus"},"content":" private void setTaskNumber(int taskNumber) {","lastModifiedDate":"2024-02-08"},{"lineNumber":77,"author":{"gitId":"annoy-o-mus"},"content":" this.taskNumber \u003d taskNumber;","lastModifiedDate":"2024-02-08"},{"lineNumber":78,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":79,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":80,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-02"},{"lineNumber":81,"author":{"gitId":"annoy-o-mus"},"content":" * Sets the status of the associated task.","lastModifiedDate":"2024-02-02"},{"lineNumber":82,"author":{"gitId":"annoy-o-mus"},"content":" *","lastModifiedDate":"2024-02-02"},{"lineNumber":83,"author":{"gitId":"annoy-o-mus"},"content":" * @param isTaskDone Whether the task has been marked completed.","lastModifiedDate":"2024-02-02"},{"lineNumber":84,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-02"},{"lineNumber":85,"author":{"gitId":"annoy-o-mus"},"content":" private void setTaskStatus(boolean isTaskDone) {","lastModifiedDate":"2024-02-02"},{"lineNumber":86,"author":{"gitId":"annoy-o-mus"},"content":" this.isTaskDone \u003d isTaskDone;","lastModifiedDate":"2024-02-02"},{"lineNumber":87,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":88,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":89,"author":{"gitId":"annoy-o-mus"},"content":" public void setTaskType(TaskType taskType) {","lastModifiedDate":"2024-02-09"},{"lineNumber":90,"author":{"gitId":"annoy-o-mus"},"content":" this.taskType \u003d taskType;","lastModifiedDate":"2024-02-09"},{"lineNumber":91,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":92,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":93,"author":{"gitId":"annoy-o-mus"},"content":" public void printTask() {","lastModifiedDate":"2024-02-08"},{"lineNumber":94,"author":{"gitId":"annoy-o-mus"},"content":" System.out.format(\"%d.[%c][%c] %s\" + System.lineSeparator(),","lastModifiedDate":"2024-02-09"},{"lineNumber":95,"author":{"gitId":"annoy-o-mus"},"content":" getTaskNumber(),","lastModifiedDate":"2024-02-08"},{"lineNumber":96,"author":{"gitId":"annoy-o-mus"},"content":" getCharRepresentationOfTaskType(),","lastModifiedDate":"2024-02-09"},{"lineNumber":97,"author":{"gitId":"annoy-o-mus"},"content":" isTaskDone() ? \u0027X\u0027 : \u0027 \u0027,","lastModifiedDate":"2024-02-08"},{"lineNumber":98,"author":{"gitId":"annoy-o-mus"},"content":" getTaskDescription());","lastModifiedDate":"2024-02-08"},{"lineNumber":99,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":100,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":101,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-02"},{"lineNumber":102,"author":{"gitId":"annoy-o-mus"},"content":" * Marks the task as done.","lastModifiedDate":"2024-02-02"},{"lineNumber":103,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-02"},{"lineNumber":104,"author":{"gitId":"annoy-o-mus"},"content":" public void markAsDone() {","lastModifiedDate":"2024-02-02"},{"lineNumber":105,"author":{"gitId":"annoy-o-mus"},"content":" setTaskStatus(true);","lastModifiedDate":"2024-02-02"},{"lineNumber":106,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Cool, this task is now done:\");","lastModifiedDate":"2024-02-02"},{"lineNumber":107,"author":{"gitId":"annoy-o-mus"},"content":" printTask();","lastModifiedDate":"2024-02-09"},{"lineNumber":108,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":109,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":110,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-02"},{"lineNumber":111,"author":{"gitId":"annoy-o-mus"},"content":" * Marks the task as undone.","lastModifiedDate":"2024-02-02"},{"lineNumber":112,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-02"},{"lineNumber":113,"author":{"gitId":"annoy-o-mus"},"content":" public void markAsUndone() {","lastModifiedDate":"2024-02-02"},{"lineNumber":114,"author":{"gitId":"annoy-o-mus"},"content":" setTaskStatus(false);","lastModifiedDate":"2024-02-02"},{"lineNumber":115,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Oh okay, this task is now marked as undone:\");","lastModifiedDate":"2024-02-02"},{"lineNumber":116,"author":{"gitId":"annoy-o-mus"},"content":" printTask();","lastModifiedDate":"2024-02-09"},{"lineNumber":117,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":118,"author":{"gitId":"annoy-o-mus"},"content":"}","lastModifiedDate":"2024-02-02"}],"authorContributionMap":{"annoy-o-mus":118}},{"path":"src/main/java/task/TaskManager.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"annoy-o-mus"},"content":"package task;","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":3,"author":{"gitId":"annoy-o-mus"},"content":"import java.util.ArrayList;","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"annoy-o-mus"},"content":"import misc.Parser;","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"annoy-o-mus"},"content":"public class TaskManager {","lastModifiedDate":"2024-02-08"},{"lineNumber":7,"author":{"gitId":"annoy-o-mus"},"content":" private static final int MAX_TASKS \u003d 128;","lastModifiedDate":"2024-02-08"},{"lineNumber":8,"author":{"gitId":"annoy-o-mus"},"content":" private static int numberOfActiveTasks \u003d 0;","lastModifiedDate":"2024-02-08"},{"lineNumber":9,"author":{"gitId":"annoy-o-mus"},"content":" private static ArrayList\u003cTask\u003e taskList \u003d new ArrayList\u003cTask\u003e();","lastModifiedDate":"2024-02-08"},{"lineNumber":10,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":11,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-08"},{"lineNumber":12,"author":{"gitId":"annoy-o-mus"},"content":" * Retrieves the task associated by its task number.","lastModifiedDate":"2024-02-08"},{"lineNumber":13,"author":{"gitId":"annoy-o-mus"},"content":" *","lastModifiedDate":"2024-02-08"},{"lineNumber":14,"author":{"gitId":"annoy-o-mus"},"content":" * @param taskNumber The task number to retrieve.","lastModifiedDate":"2024-02-08"},{"lineNumber":15,"author":{"gitId":"annoy-o-mus"},"content":" * @return The task associated with the task number. `null` if the task is not found.","lastModifiedDate":"2024-02-08"},{"lineNumber":16,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-08"},{"lineNumber":17,"author":{"gitId":"annoy-o-mus"},"content":" private static Task retrieveTask(int taskNumber) {","lastModifiedDate":"2024-02-08"},{"lineNumber":18,"author":{"gitId":"annoy-o-mus"},"content":" for (Task task : taskList) {","lastModifiedDate":"2024-02-08"},{"lineNumber":19,"author":{"gitId":"annoy-o-mus"},"content":" if (task.getTaskNumber() \u003d\u003d taskNumber) {","lastModifiedDate":"2024-02-08"},{"lineNumber":20,"author":{"gitId":"annoy-o-mus"},"content":" return task;","lastModifiedDate":"2024-02-08"},{"lineNumber":21,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":22,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":23,"author":{"gitId":"annoy-o-mus"},"content":" return null;","lastModifiedDate":"2024-02-08"},{"lineNumber":24,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":25,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":26,"author":{"gitId":"annoy-o-mus"},"content":" public static void createNewTask(String taskDescription, Task.TaskType taskType) {","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"annoy-o-mus"},"content":" if (taskDescription.isEmpty()){","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Invalid Task: Task Description is empty\");","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"annoy-o-mus"},"content":" return;","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"annoy-o-mus"},"content":" if (taskType \u003d\u003d Task.TaskType.INVALID){","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Invalid Task Type\");","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"annoy-o-mus"},"content":" return;","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"annoy-o-mus"},"content":" numberOfActiveTasks +\u003d 1;","lastModifiedDate":"2024-02-08"},{"lineNumber":37,"author":{"gitId":"annoy-o-mus"},"content":" Task newTask \u003d null;","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"annoy-o-mus"},"content":" switch (taskType){","lastModifiedDate":"2024-02-09"},{"lineNumber":39,"author":{"gitId":"annoy-o-mus"},"content":" case TODO:","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"annoy-o-mus"},"content":" newTask \u003d new Todo(taskDescription, numberOfActiveTasks);","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Alright. I have added this todo task: \");","lastModifiedDate":"2024-02-09"},{"lineNumber":42,"author":{"gitId":"annoy-o-mus"},"content":" newTask.printTask();","lastModifiedDate":"2024-02-09"},{"lineNumber":43,"author":{"gitId":"annoy-o-mus"},"content":" break;","lastModifiedDate":"2024-02-09"},{"lineNumber":44,"author":{"gitId":"annoy-o-mus"},"content":" case DEADLINE:","lastModifiedDate":"2024-02-09"},{"lineNumber":45,"author":{"gitId":"annoy-o-mus"},"content":" taskDescription \u003d Parser.parseDeadlineDescription(taskDescription);","lastModifiedDate":"2024-02-09"},{"lineNumber":46,"author":{"gitId":"annoy-o-mus"},"content":" newTask \u003d new Deadline(taskDescription,numberOfActiveTasks);","lastModifiedDate":"2024-02-09"},{"lineNumber":47,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Alright. I have added this deadline: \");","lastModifiedDate":"2024-02-09"},{"lineNumber":48,"author":{"gitId":"annoy-o-mus"},"content":" newTask.printTask();","lastModifiedDate":"2024-02-09"},{"lineNumber":49,"author":{"gitId":"annoy-o-mus"},"content":" break;","lastModifiedDate":"2024-02-09"},{"lineNumber":50,"author":{"gitId":"annoy-o-mus"},"content":" case EVENT:","lastModifiedDate":"2024-02-09"},{"lineNumber":51,"author":{"gitId":"annoy-o-mus"},"content":" taskDescription \u003d Parser.parseEventDescription(taskDescription);","lastModifiedDate":"2024-02-09"},{"lineNumber":52,"author":{"gitId":"annoy-o-mus"},"content":" newTask \u003d new Event(taskDescription,numberOfActiveTasks);","lastModifiedDate":"2024-02-09"},{"lineNumber":53,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Alright. I have added this event: \");","lastModifiedDate":"2024-02-09"},{"lineNumber":54,"author":{"gitId":"annoy-o-mus"},"content":" newTask.printTask();","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"annoy-o-mus"},"content":" break;","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":57,"author":{"gitId":"annoy-o-mus"},"content":" taskList.add(newTask);","lastModifiedDate":"2024-02-08"},{"lineNumber":58,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Now you have \" + numberOfActiveTasks + \" tasks in the list.\");","lastModifiedDate":"2024-02-09"},{"lineNumber":59,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":60,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":61,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-08"},{"lineNumber":62,"author":{"gitId":"annoy-o-mus"},"content":" * Prints out the whole list of tasks that have been added so far.","lastModifiedDate":"2024-02-08"},{"lineNumber":63,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-08"},{"lineNumber":64,"author":{"gitId":"annoy-o-mus"},"content":" public static void printTaskList() {","lastModifiedDate":"2024-02-08"},{"lineNumber":65,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Here are the tasks at hand:\");","lastModifiedDate":"2024-02-08"},{"lineNumber":66,"author":{"gitId":"annoy-o-mus"},"content":" for (Task t : taskList) {","lastModifiedDate":"2024-02-08"},{"lineNumber":67,"author":{"gitId":"annoy-o-mus"},"content":" t.printTask();","lastModifiedDate":"2024-02-08"},{"lineNumber":68,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":69,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":70,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":71,"author":{"gitId":"annoy-o-mus"},"content":" public static void markTaskAsDone(int taskNumber) {","lastModifiedDate":"2024-02-08"},{"lineNumber":72,"author":{"gitId":"annoy-o-mus"},"content":" Task taskToMark \u003d retrieveTask(taskNumber);","lastModifiedDate":"2024-02-08"},{"lineNumber":73,"author":{"gitId":"annoy-o-mus"},"content":" if (taskToMark !\u003d null) {","lastModifiedDate":"2024-02-08"},{"lineNumber":74,"author":{"gitId":"annoy-o-mus"},"content":" taskToMark.markAsDone();","lastModifiedDate":"2024-02-08"},{"lineNumber":75,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":76,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":77,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":78,"author":{"gitId":"annoy-o-mus"},"content":" public static void markTaskAsUndone(int taskNumber) {","lastModifiedDate":"2024-02-08"},{"lineNumber":79,"author":{"gitId":"annoy-o-mus"},"content":" Task taskToMark \u003d retrieveTask(taskNumber);","lastModifiedDate":"2024-02-08"},{"lineNumber":80,"author":{"gitId":"annoy-o-mus"},"content":" if (taskToMark !\u003d null) {","lastModifiedDate":"2024-02-08"},{"lineNumber":81,"author":{"gitId":"annoy-o-mus"},"content":" taskToMark.markAsUndone();","lastModifiedDate":"2024-02-08"},{"lineNumber":82,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":83,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":84,"author":{"gitId":"annoy-o-mus"},"content":"}","lastModifiedDate":"2024-02-08"}],"authorContributionMap":{"annoy-o-mus":84}},{"path":"src/main/java/task/Todo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"annoy-o-mus"},"content":"package task;","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"annoy-o-mus"},"content":"public class Todo extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"annoy-o-mus"},"content":" public Todo(String eventDescription, int taskNumber) {","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"annoy-o-mus"},"content":" super(eventDescription, taskNumber);","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"annoy-o-mus"},"content":" this.setTaskType(TaskType.TODO);","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"annoy-o-mus"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"annoy-o-mus":8}},{"path":"text-ui-test/runtest.bat","fileType":"bat","lines":[{"lineNumber":1,"author":{"gitId":"-"},"content":"@ECHO OFF","lastModifiedDate":"2020-05-25"},{"lineNumber":2,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":3,"author":{"gitId":"-"},"content":"REM create bin directory if it doesn\u0027t exist","lastModifiedDate":"2020-05-25"},{"lineNumber":4,"author":{"gitId":"-"},"content":"if not exist ..\\bin mkdir ..\\bin","lastModifiedDate":"2020-05-25"},{"lineNumber":5,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":6,"author":{"gitId":"-"},"content":"REM delete output from previous run","lastModifiedDate":"2020-05-25"},{"lineNumber":7,"author":{"gitId":"-"},"content":"if exist ACTUAL.TXT del ACTUAL.TXT","lastModifiedDate":"2020-08-25"},{"lineNumber":8,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":9,"author":{"gitId":"-"},"content":"REM compile the code into the bin folder","lastModifiedDate":"2020-05-25"},{"lineNumber":10,"author":{"gitId":"-"},"content":"javac -cp ..\\src\\main\\java -Xlint:none -d ..\\bin ..\\src\\main\\java\\*.java","lastModifiedDate":"2020-08-25"},{"lineNumber":11,"author":{"gitId":"-"},"content":"IF ERRORLEVEL 1 (","lastModifiedDate":"2020-05-25"},{"lineNumber":12,"author":{"gitId":"-"},"content":" echo ********** BUILD FAILURE **********","lastModifiedDate":"2020-05-25"},{"lineNumber":13,"author":{"gitId":"-"},"content":" exit /b 1","lastModifiedDate":"2020-05-25"},{"lineNumber":14,"author":{"gitId":"-"},"content":")","lastModifiedDate":"2020-05-25"},{"lineNumber":15,"author":{"gitId":"-"},"content":"REM no error here, errorlevel \u003d\u003d 0","lastModifiedDate":"2020-05-25"},{"lineNumber":16,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":17,"author":{"gitId":"-"},"content":"REM run the program, feed commands from input.txt file and redirect the output to the ACTUAL.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":18,"author":{"gitId":"annoy-o-mus"},"content":"java -classpath ..\\bin AnonBot \u003c input.txt \u003e ACTUAL.TXT","lastModifiedDate":"2024-02-08"},{"lineNumber":19,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":20,"author":{"gitId":"-"},"content":"REM compare the output to the expected output","lastModifiedDate":"2020-05-25"},{"lineNumber":21,"author":{"gitId":"-"},"content":"FC ACTUAL.TXT EXPECTED.TXT","lastModifiedDate":"2020-05-25"}],"authorContributionMap":{"annoy-o-mus":1,"-":20}},{"path":"text-ui-test/runtest.sh","fileType":"sh","lines":[{"lineNumber":1,"author":{"gitId":"-"},"content":"#!/usr/bin/env bash","lastModifiedDate":"2020-05-25"},{"lineNumber":2,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":3,"author":{"gitId":"-"},"content":"# create bin directory if it doesn\u0027t exist","lastModifiedDate":"2020-05-25"},{"lineNumber":4,"author":{"gitId":"-"},"content":"if [ ! -d \"../bin\" ]","lastModifiedDate":"2020-05-25"},{"lineNumber":5,"author":{"gitId":"-"},"content":"then","lastModifiedDate":"2020-05-25"},{"lineNumber":6,"author":{"gitId":"-"},"content":" mkdir ../bin","lastModifiedDate":"2020-05-25"},{"lineNumber":7,"author":{"gitId":"-"},"content":"fi","lastModifiedDate":"2020-05-25"},{"lineNumber":8,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":9,"author":{"gitId":"-"},"content":"# delete output from previous run","lastModifiedDate":"2020-05-25"},{"lineNumber":10,"author":{"gitId":"-"},"content":"if [ -e \"./ACTUAL.TXT\" ]","lastModifiedDate":"2020-05-25"},{"lineNumber":11,"author":{"gitId":"-"},"content":"then","lastModifiedDate":"2020-05-25"},{"lineNumber":12,"author":{"gitId":"-"},"content":" rm ACTUAL.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":13,"author":{"gitId":"-"},"content":"fi","lastModifiedDate":"2020-05-25"},{"lineNumber":14,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":15,"author":{"gitId":"-"},"content":"# compile the code into the bin folder, terminates if error occurred","lastModifiedDate":"2020-05-25"},{"lineNumber":16,"author":{"gitId":"-"},"content":"if ! javac -cp ../src/main/java -Xlint:none -d ../bin ../src/main/java/*.java","lastModifiedDate":"2020-08-25"},{"lineNumber":17,"author":{"gitId":"-"},"content":"then","lastModifiedDate":"2020-05-25"},{"lineNumber":18,"author":{"gitId":"-"},"content":" echo \"********** BUILD FAILURE **********\"","lastModifiedDate":"2020-05-25"},{"lineNumber":19,"author":{"gitId":"-"},"content":" exit 1","lastModifiedDate":"2020-05-25"},{"lineNumber":20,"author":{"gitId":"-"},"content":"fi","lastModifiedDate":"2020-05-25"},{"lineNumber":21,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":22,"author":{"gitId":"-"},"content":"# run the program, feed commands from input.txt file and redirect the output to the ACTUAL.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":23,"author":{"gitId":"annoy-o-mus"},"content":"java -classpath ../bin AnonBot \u003c input.txt \u003e ACTUAL.TXT","lastModifiedDate":"2024-02-08"},{"lineNumber":24,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":25,"author":{"gitId":"-"},"content":"# convert to UNIX format","lastModifiedDate":"2020-05-25"},{"lineNumber":26,"author":{"gitId":"-"},"content":"cp EXPECTED.TXT EXPECTED-UNIX.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":27,"author":{"gitId":"-"},"content":"dos2unix ACTUAL.TXT EXPECTED-UNIX.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":28,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":29,"author":{"gitId":"-"},"content":"# compare the output to the expected output","lastModifiedDate":"2020-05-25"},{"lineNumber":30,"author":{"gitId":"-"},"content":"diff ACTUAL.TXT EXPECTED-UNIX.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":31,"author":{"gitId":"-"},"content":"if [ $? -eq 0 ]","lastModifiedDate":"2020-05-25"},{"lineNumber":32,"author":{"gitId":"-"},"content":"then","lastModifiedDate":"2020-05-25"},{"lineNumber":33,"author":{"gitId":"-"},"content":" echo \"Test result: PASSED\"","lastModifiedDate":"2020-05-25"},{"lineNumber":34,"author":{"gitId":"-"},"content":" exit 0","lastModifiedDate":"2020-05-25"},{"lineNumber":35,"author":{"gitId":"-"},"content":"else","lastModifiedDate":"2020-05-25"},{"lineNumber":36,"author":{"gitId":"-"},"content":" echo \"Test result: FAILED\"","lastModifiedDate":"2020-05-25"},{"lineNumber":37,"author":{"gitId":"-"},"content":" exit 1","lastModifiedDate":"2020-05-25"},{"lineNumber":38,"author":{"gitId":"-"},"content":"fi","lastModifiedDate":"2020-05-25"}],"authorContributionMap":{"annoy-o-mus":1,"-":37}}] +[{"path":"README.md","fileType":"md","lines":[{"lineNumber":1,"author":{"gitId":"-"},"content":"# Duke project template","lastModifiedDate":"2020-05-25"},{"lineNumber":2,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":3,"author":{"gitId":"-"},"content":"This is a project template for a greenfield Java project. It\u0027s named after the Java mascot _Duke_. Given below are instructions on how to use it.","lastModifiedDate":"2020-05-25"},{"lineNumber":4,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":5,"author":{"gitId":"-"},"content":"## Setting up in Intellij","lastModifiedDate":"2020-05-25"},{"lineNumber":6,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":7,"author":{"gitId":"-"},"content":"Prerequisites: JDK 11, update Intellij to the most recent version.","lastModifiedDate":"2020-05-25"},{"lineNumber":8,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":9,"author":{"gitId":"-"},"content":"1. Open Intellij (if you are not in the welcome screen, click `File` \u003e `Close Project` to close the existing project first)","lastModifiedDate":"2021-01-17"},{"lineNumber":10,"author":{"gitId":"-"},"content":"1. Open the project into Intellij as follows:","lastModifiedDate":"2021-01-17"},{"lineNumber":11,"author":{"gitId":"-"},"content":" 1. Click `Open`.","lastModifiedDate":"2021-01-17"},{"lineNumber":12,"author":{"gitId":"-"},"content":" 1. Select the project directory, and click `OK`.","lastModifiedDate":"2021-01-17"},{"lineNumber":13,"author":{"gitId":"-"},"content":" 1. If there are any further prompts, accept the defaults.","lastModifiedDate":"2020-05-25"},{"lineNumber":14,"author":{"gitId":"-"},"content":"1. Configure the project to use **JDK 11** (not other versions) as explained in [here](https://www.jetbrains.com/help/idea/sdk.html#set-up-jdk).\u003cbr\u003e","lastModifiedDate":"2021-07-29"},{"lineNumber":15,"author":{"gitId":"-"},"content":" In the same dialog, set the **Project language level** field to the `SDK default` option.","lastModifiedDate":"2021-07-29"},{"lineNumber":16,"author":{"gitId":"annoy-o-mus"},"content":"3. After that, locate the `src/main/java/AnonBot.java` file, right-click it, and choose `Run AnonBot.main()` (if the code editor is showing compile errors, try restarting the IDE). If the setup is correct, you should see something like the below as the output:","lastModifiedDate":"2024-02-08"},{"lineNumber":17,"author":{"gitId":"-"},"content":" ```","lastModifiedDate":"2020-05-25"},{"lineNumber":18,"author":{"gitId":"-"},"content":" ____ _ ","lastModifiedDate":"2020-05-25"},{"lineNumber":19,"author":{"gitId":"annoy-o-mus"},"content":" | _ \\ | | ","lastModifiedDate":"2024-02-02"},{"lineNumber":20,"author":{"gitId":"annoy-o-mus"},"content":" __ _ _ __ ___ _ __ | |_) | ___ | |_ ","lastModifiedDate":"2024-02-02"},{"lineNumber":21,"author":{"gitId":"annoy-o-mus"},"content":" / _` | \u0027_ \\ / _ \\| \u0027_ \\| _ \u003c / _ \\| __|","lastModifiedDate":"2024-02-02"},{"lineNumber":22,"author":{"gitId":"annoy-o-mus"},"content":" | (_| | | | | (_) | | | | |_) | (_) | |_","lastModifiedDate":"2024-02-02"},{"lineNumber":23,"author":{"gitId":"annoy-o-mus"},"content":" \\__,_|_| |_|\\___/|_| |_|____/ \\___/ \\__|","lastModifiedDate":"2024-02-02"},{"lineNumber":24,"author":{"gitId":"-"},"content":" ```","lastModifiedDate":"2020-05-25"}],"authorContributionMap":{"annoy-o-mus":6,"-":18}},{"path":"src/main/java/AnonBot.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"annoy-o-mus"},"content":"public class AnonBot {","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"annoy-o-mus"},"content":" private static void runMainLoop() {","lastModifiedDate":"2024-02-08"},{"lineNumber":3,"author":{"gitId":"annoy-o-mus"},"content":" Status commandStatus \u003d Status.STATUS_OK;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"annoy-o-mus"},"content":" while (commandStatus !\u003d Status.STATUS_EXIT) {","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"annoy-o-mus"},"content":" String userInput \u003d Ui.getUserInput();","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"annoy-o-mus"},"content":" commandStatus \u003d CommandManager.processCommand(userInput);","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":8,"author":{"gitId":"-"},"content":" }","lastModifiedDate":"2019-07-29"},{"lineNumber":9,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":10,"author":{"gitId":"annoy-o-mus"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-02-02"},{"lineNumber":11,"author":{"gitId":"annoy-o-mus"},"content":" Ui.printGreetings();","lastModifiedDate":"2024-02-08"},{"lineNumber":12,"author":{"gitId":"annoy-o-mus"},"content":" runMainLoop();","lastModifiedDate":"2024-02-08"},{"lineNumber":13,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":14,"author":{"gitId":"-"},"content":"}","lastModifiedDate":"2019-07-29"}],"authorContributionMap":{"annoy-o-mus":12,"-":2}},{"path":"src/main/java/CommandManager.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"annoy-o-mus"},"content":"import misc.Parser;","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"annoy-o-mus"},"content":"import task.Task.TaskType;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"annoy-o-mus"},"content":"import task.TaskManager;","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":5,"author":{"gitId":"annoy-o-mus"},"content":"public class CommandManager {","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-08"},{"lineNumber":7,"author":{"gitId":"annoy-o-mus"},"content":" * Takes user inputs as commands and process them.","lastModifiedDate":"2024-02-08"},{"lineNumber":8,"author":{"gitId":"annoy-o-mus"},"content":" * If the input is not one of the supported commands below, NO new task will be created.","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"annoy-o-mus"},"content":" * Tasks are NOT saved when the program exits.","lastModifiedDate":"2024-02-08"},{"lineNumber":10,"author":{"gitId":"annoy-o-mus"},"content":" * Possible commands:","lastModifiedDate":"2024-02-08"},{"lineNumber":11,"author":{"gitId":"annoy-o-mus"},"content":" * 1. `bye`, `exit` - Exits the program.","lastModifiedDate":"2024-02-08"},{"lineNumber":12,"author":{"gitId":"annoy-o-mus"},"content":" * 2. `list` - Lists out all the tasks.","lastModifiedDate":"2024-02-08"},{"lineNumber":13,"author":{"gitId":"annoy-o-mus"},"content":" * 3. `mark \u003ctask_number\u003e - Marks specific task as done.","lastModifiedDate":"2024-02-08"},{"lineNumber":14,"author":{"gitId":"annoy-o-mus"},"content":" * 4. `unmark` \u003ctask_number\u003e - Marks specific task as undone.","lastModifiedDate":"2024-02-08"},{"lineNumber":15,"author":{"gitId":"annoy-o-mus"},"content":" * 5. `todo` \u003cdescription\u003e - Creates a new todo task.","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"annoy-o-mus"},"content":" * 6. `deadline` \u003cdescription\u003e /by \u003cend_time\u003e - Creates a new deadline task.","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"annoy-o-mus"},"content":" * 7. `event` \u003cdescription\u003e /from \u003cstart_time\u003e /to \u003cend_time\u003e - Creates a new event task.","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-08"},{"lineNumber":19,"author":{"gitId":"annoy-o-mus"},"content":" public static Status processCommand(String userInput) {","lastModifiedDate":"2024-02-08"},{"lineNumber":20,"author":{"gitId":"annoy-o-mus"},"content":" if (userInput.isEmpty()) {","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Error: Empty input\");","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"annoy-o-mus"},"content":" return Status.STATUS_ERROR_EMPTY_INPUT;","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"annoy-o-mus"},"content":" String command \u003d Parser.getCommand(userInput);","lastModifiedDate":"2024-02-08"},{"lineNumber":26,"author":{"gitId":"annoy-o-mus"},"content":" String rawArgument \u003d Parser.getCommandArgument(userInput);","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"annoy-o-mus"},"content":" Status executionStatus;","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"annoy-o-mus"},"content":" Ui.printSectionBar(false);","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"annoy-o-mus"},"content":" switch (command) {","lastModifiedDate":"2024-02-08"},{"lineNumber":31,"author":{"gitId":"annoy-o-mus"},"content":" case \"exit\":","lastModifiedDate":"2024-02-08"},{"lineNumber":32,"author":{"gitId":"annoy-o-mus"},"content":" // fallthrough","lastModifiedDate":"2024-02-08"},{"lineNumber":33,"author":{"gitId":"annoy-o-mus"},"content":" case \"bye\":","lastModifiedDate":"2024-02-08"},{"lineNumber":34,"author":{"gitId":"annoy-o-mus"},"content":" Ui.printGoodbye();","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"annoy-o-mus"},"content":" executionStatus \u003d Status.STATUS_EXIT;","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"annoy-o-mus"},"content":" break;","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"annoy-o-mus"},"content":" case \"list\":","lastModifiedDate":"2024-02-08"},{"lineNumber":38,"author":{"gitId":"annoy-o-mus"},"content":" TaskManager.printTaskList();","lastModifiedDate":"2024-02-08"},{"lineNumber":39,"author":{"gitId":"annoy-o-mus"},"content":" executionStatus \u003d Status.STATUS_OK;","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"annoy-o-mus"},"content":" break;","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"annoy-o-mus"},"content":" case \"mark\":","lastModifiedDate":"2024-02-08"},{"lineNumber":42,"author":{"gitId":"annoy-o-mus"},"content":" processMarkCommand(rawArgument);","lastModifiedDate":"2024-02-09"},{"lineNumber":43,"author":{"gitId":"annoy-o-mus"},"content":" executionStatus \u003d Status.STATUS_OK;","lastModifiedDate":"2024-02-09"},{"lineNumber":44,"author":{"gitId":"annoy-o-mus"},"content":" break;","lastModifiedDate":"2024-02-09"},{"lineNumber":45,"author":{"gitId":"annoy-o-mus"},"content":" case \"unmark\":","lastModifiedDate":"2024-02-08"},{"lineNumber":46,"author":{"gitId":"annoy-o-mus"},"content":" processUnmarkCommand(rawArgument);","lastModifiedDate":"2024-02-09"},{"lineNumber":47,"author":{"gitId":"annoy-o-mus"},"content":" executionStatus \u003d Status.STATUS_OK;","lastModifiedDate":"2024-02-09"},{"lineNumber":48,"author":{"gitId":"annoy-o-mus"},"content":" break;","lastModifiedDate":"2024-02-09"},{"lineNumber":49,"author":{"gitId":"annoy-o-mus"},"content":" case \"todo\":","lastModifiedDate":"2024-02-09"},{"lineNumber":50,"author":{"gitId":"annoy-o-mus"},"content":" TaskManager.createNewTask(rawArgument, TaskType.TODO);","lastModifiedDate":"2024-02-09"},{"lineNumber":51,"author":{"gitId":"annoy-o-mus"},"content":" executionStatus \u003d Status.STATUS_OK;","lastModifiedDate":"2024-02-09"},{"lineNumber":52,"author":{"gitId":"annoy-o-mus"},"content":" break;","lastModifiedDate":"2024-02-09"},{"lineNumber":53,"author":{"gitId":"annoy-o-mus"},"content":" case \"deadline\":","lastModifiedDate":"2024-02-09"},{"lineNumber":54,"author":{"gitId":"annoy-o-mus"},"content":" TaskManager.createNewTask(rawArgument, TaskType.DEADLINE);","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"annoy-o-mus"},"content":" executionStatus \u003d Status.STATUS_OK;","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"annoy-o-mus"},"content":" break;","lastModifiedDate":"2024-02-09"},{"lineNumber":57,"author":{"gitId":"annoy-o-mus"},"content":" case \"event\":","lastModifiedDate":"2024-02-09"},{"lineNumber":58,"author":{"gitId":"annoy-o-mus"},"content":" TaskManager.createNewTask(rawArgument, TaskType.EVENT);","lastModifiedDate":"2024-02-09"},{"lineNumber":59,"author":{"gitId":"annoy-o-mus"},"content":" executionStatus \u003d Status.STATUS_OK;","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"annoy-o-mus"},"content":" break;","lastModifiedDate":"2024-02-09"},{"lineNumber":61,"author":{"gitId":"annoy-o-mus"},"content":" default:","lastModifiedDate":"2024-02-08"},{"lineNumber":62,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Invalid Command.\");","lastModifiedDate":"2024-02-09"},{"lineNumber":63,"author":{"gitId":"annoy-o-mus"},"content":" executionStatus \u003d Status.STATUS_ERROR_INVALID_COMMAND;","lastModifiedDate":"2024-02-09"},{"lineNumber":64,"author":{"gitId":"annoy-o-mus"},"content":" break;","lastModifiedDate":"2024-02-09"},{"lineNumber":65,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":66,"author":{"gitId":"annoy-o-mus"},"content":" Ui.printSectionBar(true);","lastModifiedDate":"2024-02-09"},{"lineNumber":67,"author":{"gitId":"annoy-o-mus"},"content":" return executionStatus;","lastModifiedDate":"2024-02-09"},{"lineNumber":68,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":69,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":70,"author":{"gitId":"annoy-o-mus"},"content":" private static void processMarkCommand(String rawArgument) {","lastModifiedDate":"2024-02-09"},{"lineNumber":71,"author":{"gitId":"annoy-o-mus"},"content":" if (Parser.isValidTaskNumberString(rawArgument)) {","lastModifiedDate":"2024-02-09"},{"lineNumber":72,"author":{"gitId":"annoy-o-mus"},"content":" int taskNumber \u003d Parser.getTaskNumberFromString(rawArgument);","lastModifiedDate":"2024-02-09"},{"lineNumber":73,"author":{"gitId":"annoy-o-mus"},"content":" TaskManager.markTaskAsDone(taskNumber);","lastModifiedDate":"2024-02-09"},{"lineNumber":74,"author":{"gitId":"annoy-o-mus"},"content":" } else {","lastModifiedDate":"2024-02-09"},{"lineNumber":75,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Invalid argument for mark\");","lastModifiedDate":"2024-02-09"},{"lineNumber":76,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":77,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":78,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":79,"author":{"gitId":"annoy-o-mus"},"content":" private static void processUnmarkCommand(String rawArgument) {","lastModifiedDate":"2024-02-09"},{"lineNumber":80,"author":{"gitId":"annoy-o-mus"},"content":" if (Parser.isValidTaskNumberString(rawArgument)) {","lastModifiedDate":"2024-02-09"},{"lineNumber":81,"author":{"gitId":"annoy-o-mus"},"content":" int taskNumber \u003d Parser.getTaskNumberFromString(rawArgument);","lastModifiedDate":"2024-02-09"},{"lineNumber":82,"author":{"gitId":"annoy-o-mus"},"content":" TaskManager.markTaskAsUndone(taskNumber);","lastModifiedDate":"2024-02-09"},{"lineNumber":83,"author":{"gitId":"annoy-o-mus"},"content":" } else {","lastModifiedDate":"2024-02-09"},{"lineNumber":84,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Invalid argument for unmark\");","lastModifiedDate":"2024-02-09"},{"lineNumber":85,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":86,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":87,"author":{"gitId":"annoy-o-mus"},"content":"}","lastModifiedDate":"2024-02-08"}],"authorContributionMap":{"annoy-o-mus":87}},{"path":"src/main/java/Status.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"annoy-o-mus"},"content":"public enum Status {","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"annoy-o-mus"},"content":" STATUS_OK, STATUS_EXIT,","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"annoy-o-mus"},"content":" STATUS_ERROR_EMPTY_INPUT,","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"annoy-o-mus"},"content":" STATUS_ERROR_INVALID_COMMAND","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"annoy-o-mus"},"content":"}","lastModifiedDate":"2024-02-08"}],"authorContributionMap":{"annoy-o-mus":5}},{"path":"src/main/java/Ui.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"annoy-o-mus"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":3,"author":{"gitId":"annoy-o-mus"},"content":"public class Ui {","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"annoy-o-mus"},"content":" // ASCII Art Generated from: https://patorjk.com/software/taag/#p\u003ddisplay\u0026f\u003dBig\u0026t\u003danonBot","lastModifiedDate":"2024-02-08"},{"lineNumber":5,"author":{"gitId":"annoy-o-mus"},"content":" private static final String LOGO \u003d \" ____ _ \" + System.lineSeparator()","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"annoy-o-mus"},"content":" + \" | _ \\\\ | | \" + System.lineSeparator()","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"annoy-o-mus"},"content":" + \" __ _ _ __ ___ _ __ | |_) | ___ | |_ \" + System.lineSeparator()","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"annoy-o-mus"},"content":" + \" / _` | \u0027_ \\\\ / _ \\\\| \u0027_ \\\\| _ \u003c / _ \\\\| __|\" + System.lineSeparator()","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"annoy-o-mus"},"content":" + \" | (_| | | | | (_) | | | | |_) | (_) | |_ \" + System.lineSeparator()","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"annoy-o-mus"},"content":" + \" \\\\__,_|_| |_|\\\\___/|_| |_|____/ \\\\___/ \\\\__|\" + System.lineSeparator();","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"annoy-o-mus"},"content":" private static final String SECTION_BAR \u003d \"____________________________________________________________\";","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":13,"author":{"gitId":"annoy-o-mus"},"content":" private static final Scanner userInput \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-08"},{"lineNumber":14,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":15,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-08"},{"lineNumber":16,"author":{"gitId":"annoy-o-mus"},"content":" * Prints greeting messages.","lastModifiedDate":"2024-02-08"},{"lineNumber":17,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-08"},{"lineNumber":18,"author":{"gitId":"annoy-o-mus"},"content":" public static void printGreetings() {","lastModifiedDate":"2024-02-08"},{"lineNumber":19,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(LOGO);","lastModifiedDate":"2024-02-08"},{"lineNumber":20,"author":{"gitId":"annoy-o-mus"},"content":" printSectionBar(false);","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Hello! I\u0027m anonBot\");","lastModifiedDate":"2024-02-08"},{"lineNumber":22,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"What can I do for you?\");","lastModifiedDate":"2024-02-08"},{"lineNumber":23,"author":{"gitId":"annoy-o-mus"},"content":" printSectionBar(true);","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":25,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":26,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-08"},{"lineNumber":27,"author":{"gitId":"annoy-o-mus"},"content":" * Prints goodbye message.","lastModifiedDate":"2024-02-08"},{"lineNumber":28,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-08"},{"lineNumber":29,"author":{"gitId":"annoy-o-mus"},"content":" public static void printGoodbye() {","lastModifiedDate":"2024-02-08"},{"lineNumber":30,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"See ya!\");","lastModifiedDate":"2024-02-08"},{"lineNumber":31,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"annoy-o-mus"},"content":" public static void printSectionBar(boolean withLineTerminator) {","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"annoy-o-mus"},"content":" if (withLineTerminator) {","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(SECTION_BAR + System.lineSeparator());","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"annoy-o-mus"},"content":" } else {","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(SECTION_BAR);","lastModifiedDate":"2024-02-08"},{"lineNumber":38,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":39,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":41,"author":{"gitId":"annoy-o-mus"},"content":" public static String getUserInput() {","lastModifiedDate":"2024-02-08"},{"lineNumber":42,"author":{"gitId":"annoy-o-mus"},"content":" // Adapted from: https://stackoverflow.com/questions/13729294/nosuchelementexception-with-java-util-scanner","lastModifiedDate":"2024-02-08"},{"lineNumber":43,"author":{"gitId":"annoy-o-mus"},"content":" if (userInput.hasNextLine()) {","lastModifiedDate":"2024-02-08"},{"lineNumber":44,"author":{"gitId":"annoy-o-mus"},"content":" return userInput.nextLine();","lastModifiedDate":"2024-02-08"},{"lineNumber":45,"author":{"gitId":"annoy-o-mus"},"content":" } else {","lastModifiedDate":"2024-02-08"},{"lineNumber":46,"author":{"gitId":"annoy-o-mus"},"content":" return \"\";","lastModifiedDate":"2024-02-08"},{"lineNumber":47,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":48,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":49,"author":{"gitId":"annoy-o-mus"},"content":"}","lastModifiedDate":"2024-02-08"}],"authorContributionMap":{"annoy-o-mus":49}},{"path":"src/main/java/misc/Parser.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"annoy-o-mus"},"content":"package misc;","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"annoy-o-mus"},"content":"public class Parser {","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"annoy-o-mus"},"content":" public static String getCommand(String userInput) {","lastModifiedDate":"2024-02-08"},{"lineNumber":5,"author":{"gitId":"annoy-o-mus"},"content":" return userInput.split(\" \", 2)[0];","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":7,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":8,"author":{"gitId":"annoy-o-mus"},"content":" public static String getCommandArgument(String userInput) {","lastModifiedDate":"2024-02-08"},{"lineNumber":9,"author":{"gitId":"annoy-o-mus"},"content":" try {","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"annoy-o-mus"},"content":" return userInput.split(\" \", 2)[1];","lastModifiedDate":"2024-02-08"},{"lineNumber":11,"author":{"gitId":"annoy-o-mus"},"content":" } catch (ArrayIndexOutOfBoundsException e) {","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"annoy-o-mus"},"content":" // If there is no argument associated with that command","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"annoy-o-mus"},"content":" return \"\";","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"annoy-o-mus"},"content":" * Checks if the command argument contains a purely numeric string.","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"annoy-o-mus"},"content":" *","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"annoy-o-mus"},"content":" * @param commandArgument The argument portion of the user input.","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"annoy-o-mus"},"content":" * @return Whether the argument is a number of type String.","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"annoy-o-mus"},"content":" public static boolean isValidTaskNumberString(String commandArgument) {","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"annoy-o-mus"},"content":" // We are only expecting 1 argument since this is only called by the `mark` and `unmark` commands","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"annoy-o-mus"},"content":" String[] argumentList \u003d commandArgument.split(\" \");","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"annoy-o-mus"},"content":" if (argumentList.length !\u003d 1) {","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"annoy-o-mus"},"content":" return false;","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"annoy-o-mus"},"content":" try {","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"annoy-o-mus"},"content":" Integer.parseInt(commandArgument);","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"annoy-o-mus"},"content":" } catch (NumberFormatException e) {","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"annoy-o-mus"},"content":" // We reject those with a mix of alphanumeric characters","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"annoy-o-mus"},"content":" return false;","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"annoy-o-mus"},"content":" return true;","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":38,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":39,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"annoy-o-mus"},"content":" * Gets the task number by converting the string to integer type.","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"annoy-o-mus"},"content":" * Assumes that the input has been checked and is valid.","lastModifiedDate":"2024-02-09"},{"lineNumber":42,"author":{"gitId":"annoy-o-mus"},"content":" *","lastModifiedDate":"2024-02-09"},{"lineNumber":43,"author":{"gitId":"annoy-o-mus"},"content":" * @param taskNumberString The task number that is of type String.","lastModifiedDate":"2024-02-09"},{"lineNumber":44,"author":{"gitId":"annoy-o-mus"},"content":" * @return The task number of type int.","lastModifiedDate":"2024-02-09"},{"lineNumber":45,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-09"},{"lineNumber":46,"author":{"gitId":"annoy-o-mus"},"content":" public static int getTaskNumberFromString(String taskNumberString) {","lastModifiedDate":"2024-02-09"},{"lineNumber":47,"author":{"gitId":"annoy-o-mus"},"content":" return Integer.parseInt(taskNumberString);","lastModifiedDate":"2024-02-09"},{"lineNumber":48,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":49,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":50,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-09"},{"lineNumber":51,"author":{"gitId":"annoy-o-mus"},"content":" * Parse the raw deadline description and break into its constituent parts.","lastModifiedDate":"2024-02-09"},{"lineNumber":52,"author":{"gitId":"annoy-o-mus"},"content":" *","lastModifiedDate":"2024-02-09"},{"lineNumber":53,"author":{"gitId":"annoy-o-mus"},"content":" * @param rawDeadlineDescription The unformatted deadline description","lastModifiedDate":"2024-02-09"},{"lineNumber":54,"author":{"gitId":"annoy-o-mus"},"content":" * @return The formatted event description in the form {\"Deadline Description\", \"/by info\"}","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"annoy-o-mus"},"content":" public static String[] parseDeadlineDescription(String rawDeadlineDescription) {","lastModifiedDate":"2024-02-09"},{"lineNumber":57,"author":{"gitId":"annoy-o-mus"},"content":" // Format: {\"Deadline Description\", \"/by information\"}","lastModifiedDate":"2024-02-09"},{"lineNumber":58,"author":{"gitId":"annoy-o-mus"},"content":" String[] parsedDeadlineSubstrings \u003d {\"\", \"\"};","lastModifiedDate":"2024-02-09"},{"lineNumber":59,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"annoy-o-mus"},"content":" String[] splitStringArray \u003d rawDeadlineDescription.split(\" /by \", 2);","lastModifiedDate":"2024-02-09"},{"lineNumber":61,"author":{"gitId":"annoy-o-mus"},"content":" parsedDeadlineSubstrings[0] \u003d splitStringArray[0];","lastModifiedDate":"2024-02-09"},{"lineNumber":62,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":63,"author":{"gitId":"annoy-o-mus"},"content":" // We currently do not check if the deadline task has the right format (/by)","lastModifiedDate":"2024-02-09"},{"lineNumber":64,"author":{"gitId":"annoy-o-mus"},"content":" if (splitStringArray.length \u003d\u003d 2) {","lastModifiedDate":"2024-02-09"},{"lineNumber":65,"author":{"gitId":"annoy-o-mus"},"content":" parsedDeadlineSubstrings[1] \u003d splitStringArray[1];","lastModifiedDate":"2024-02-09"},{"lineNumber":66,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":67,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":68,"author":{"gitId":"annoy-o-mus"},"content":" return parsedDeadlineSubstrings;","lastModifiedDate":"2024-02-09"},{"lineNumber":69,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":70,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":71,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-09"},{"lineNumber":72,"author":{"gitId":"annoy-o-mus"},"content":" * Parse the raw event description and break into its constituent parts.","lastModifiedDate":"2024-02-09"},{"lineNumber":73,"author":{"gitId":"annoy-o-mus"},"content":" *","lastModifiedDate":"2024-02-09"},{"lineNumber":74,"author":{"gitId":"annoy-o-mus"},"content":" * @param rawEventDescription The unformatted event description.","lastModifiedDate":"2024-02-09"},{"lineNumber":75,"author":{"gitId":"annoy-o-mus"},"content":" * @return The formatted event description in the form {\"Event Description\", \"/from info\", \"/to info\"}","lastModifiedDate":"2024-02-09"},{"lineNumber":76,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-09"},{"lineNumber":77,"author":{"gitId":"annoy-o-mus"},"content":" public static String[] parseEventDescription(String rawEventDescription) {","lastModifiedDate":"2024-02-09"},{"lineNumber":78,"author":{"gitId":"annoy-o-mus"},"content":" // Format: {\"Deadline Description\", \"/from information\", \"/to information\"}","lastModifiedDate":"2024-02-09"},{"lineNumber":79,"author":{"gitId":"annoy-o-mus"},"content":" String[] parsedEventSubstrings \u003d {\"\", \"\", \"\"};","lastModifiedDate":"2024-02-09"},{"lineNumber":80,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":81,"author":{"gitId":"annoy-o-mus"},"content":" String[] splitStringArray \u003d rawEventDescription.split(\" /from \", 2);","lastModifiedDate":"2024-02-09"},{"lineNumber":82,"author":{"gitId":"annoy-o-mus"},"content":" parsedEventSubstrings[0] \u003d splitStringArray[0];","lastModifiedDate":"2024-02-09"},{"lineNumber":83,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":84,"author":{"gitId":"annoy-o-mus"},"content":" // We currently do not check if the event task has the right format (/from, /to)","lastModifiedDate":"2024-02-09"},{"lineNumber":85,"author":{"gitId":"annoy-o-mus"},"content":" if (splitStringArray.length !\u003d 2) {","lastModifiedDate":"2024-02-09"},{"lineNumber":86,"author":{"gitId":"annoy-o-mus"},"content":" return parsedEventSubstrings;","lastModifiedDate":"2024-02-09"},{"lineNumber":87,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":88,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":89,"author":{"gitId":"annoy-o-mus"},"content":" String[] fromToArray \u003d splitStringArray[1].split(\" /to \", 2);","lastModifiedDate":"2024-02-09"},{"lineNumber":90,"author":{"gitId":"annoy-o-mus"},"content":" parsedEventSubstrings[1] \u003d fromToArray[0];","lastModifiedDate":"2024-02-09"},{"lineNumber":91,"author":{"gitId":"annoy-o-mus"},"content":" if (fromToArray.length \u003d\u003d 2) {","lastModifiedDate":"2024-02-09"},{"lineNumber":92,"author":{"gitId":"annoy-o-mus"},"content":" parsedEventSubstrings[2] \u003d fromToArray[1];","lastModifiedDate":"2024-02-09"},{"lineNumber":93,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":94,"author":{"gitId":"annoy-o-mus"},"content":" return parsedEventSubstrings;","lastModifiedDate":"2024-02-09"},{"lineNumber":95,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":96,"author":{"gitId":"annoy-o-mus"},"content":"}","lastModifiedDate":"2024-02-08"}],"authorContributionMap":{"annoy-o-mus":96}},{"path":"src/main/java/task/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"annoy-o-mus"},"content":"package task;","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"annoy-o-mus"},"content":"import misc.Parser;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"annoy-o-mus"},"content":"public class Deadline extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"annoy-o-mus"},"content":" private String by;","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"annoy-o-mus"},"content":" public Deadline(String deadlineDesc, int taskNumber) {","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"annoy-o-mus"},"content":" super(\"\", taskNumber, TaskType.DEADLINE);","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"annoy-o-mus"},"content":" String[] formattedDeadlineDesc \u003d Parser.parseDeadlineDescription(deadlineDesc);","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"annoy-o-mus"},"content":" setTaskDescription(formattedDeadlineDesc[0]);","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"annoy-o-mus"},"content":" setBy(formattedDeadlineDesc[1]);","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"annoy-o-mus"},"content":" public String getBy() {","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"annoy-o-mus"},"content":" return by;","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"annoy-o-mus"},"content":" public void setBy(String by) {","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"annoy-o-mus"},"content":" this.by \u003d by;","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"annoy-o-mus"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"annoy-o-mus"},"content":" public void printTask() {","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"annoy-o-mus"},"content":" System.out.format(\"%d.[D][%c] %s (by: %s)\" + System.lineSeparator(),","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"annoy-o-mus"},"content":" getTaskNumber(),","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"annoy-o-mus"},"content":" isTaskDone() ? \u0027X\u0027 : \u0027 \u0027,","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"annoy-o-mus"},"content":" getTaskDescription(),","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"annoy-o-mus"},"content":" getBy());","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"annoy-o-mus"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"annoy-o-mus":31}},{"path":"src/main/java/task/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"annoy-o-mus"},"content":"package task;","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"annoy-o-mus"},"content":"import misc.Parser;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"annoy-o-mus"},"content":"public class Event extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"annoy-o-mus"},"content":" private String from;","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"annoy-o-mus"},"content":" private String to;","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"annoy-o-mus"},"content":" public Event(String eventDescription, int taskNumber) {","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"annoy-o-mus"},"content":" super(\"\", taskNumber, TaskType.EVENT);","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"annoy-o-mus"},"content":" String[] formattedEventDescription \u003d Parser.parseEventDescription(eventDescription);","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"annoy-o-mus"},"content":" setTaskDescription(formattedEventDescription[0]);","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"annoy-o-mus"},"content":" setFrom(formattedEventDescription[1]);","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"annoy-o-mus"},"content":" setTo(formattedEventDescription[2]);","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"annoy-o-mus"},"content":" public String getFrom() {","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"annoy-o-mus"},"content":" return from;","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"annoy-o-mus"},"content":" public void setFrom(String from) {","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"annoy-o-mus"},"content":" this.from \u003d from;","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"annoy-o-mus"},"content":" public String getTo() {","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"annoy-o-mus"},"content":" return to;","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"annoy-o-mus"},"content":" public void setTo(String to) {","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"annoy-o-mus"},"content":" this.to \u003d to;","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"annoy-o-mus"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"annoy-o-mus"},"content":" public void printTask() {","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"annoy-o-mus"},"content":" System.out.format(\"%d.[E][%c] %s (from: %s to: %s)\" + System.lineSeparator(),","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"annoy-o-mus"},"content":" getTaskNumber(),","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"annoy-o-mus"},"content":" isTaskDone() ? \u0027X\u0027 : \u0027 \u0027,","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"annoy-o-mus"},"content":" getTaskDescription(),","lastModifiedDate":"2024-02-09"},{"lineNumber":39,"author":{"gitId":"annoy-o-mus"},"content":" getFrom(),","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"annoy-o-mus"},"content":" getTo());","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":42,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":43,"author":{"gitId":"annoy-o-mus"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"annoy-o-mus":43}},{"path":"src/main/java/task/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"annoy-o-mus"},"content":"package task;","lastModifiedDate":"2024-02-02"},{"lineNumber":2,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":3,"author":{"gitId":"annoy-o-mus"},"content":"public class Task {","lastModifiedDate":"2024-02-02"},{"lineNumber":4,"author":{"gitId":"annoy-o-mus"},"content":" public enum TaskType {","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"annoy-o-mus"},"content":" TODO, DEADLINE, EVENT,","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"annoy-o-mus"},"content":" INVALID","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"annoy-o-mus"},"content":" private String taskDescription;","lastModifiedDate":"2024-02-02"},{"lineNumber":10,"author":{"gitId":"annoy-o-mus"},"content":" private int taskNumber;","lastModifiedDate":"2024-02-02"},{"lineNumber":11,"author":{"gitId":"annoy-o-mus"},"content":" private TaskType taskType;","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"annoy-o-mus"},"content":" private boolean isTaskDone;","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":14,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-02"},{"lineNumber":15,"author":{"gitId":"annoy-o-mus"},"content":" * Creates a new Task with an associated task number and task type.","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"annoy-o-mus"},"content":" *","lastModifiedDate":"2024-02-02"},{"lineNumber":17,"author":{"gitId":"annoy-o-mus"},"content":" * @param taskDescription Description of the task.","lastModifiedDate":"2024-02-02"},{"lineNumber":18,"author":{"gitId":"annoy-o-mus"},"content":" * @param taskNumber The task number this task is tagged to.","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"annoy-o-mus"},"content":" * @param taskType The type of task.","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-02"},{"lineNumber":21,"author":{"gitId":"annoy-o-mus"},"content":" public Task(String taskDescription, int taskNumber, TaskType taskType) {","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"annoy-o-mus"},"content":" setTaskDescription(taskDescription);","lastModifiedDate":"2024-02-02"},{"lineNumber":23,"author":{"gitId":"annoy-o-mus"},"content":" setTaskNumber(taskNumber);","lastModifiedDate":"2024-02-08"},{"lineNumber":24,"author":{"gitId":"annoy-o-mus"},"content":" setTaskType(taskType);","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"annoy-o-mus"},"content":" setTaskStatus(false);","lastModifiedDate":"2024-02-02"},{"lineNumber":26,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":27,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":28,"author":{"gitId":"annoy-o-mus"},"content":" public String getTaskDescription() {","lastModifiedDate":"2024-02-02"},{"lineNumber":29,"author":{"gitId":"annoy-o-mus"},"content":" return taskDescription;","lastModifiedDate":"2024-02-02"},{"lineNumber":30,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":31,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":32,"author":{"gitId":"annoy-o-mus"},"content":" public int getTaskNumber() {","lastModifiedDate":"2024-02-08"},{"lineNumber":33,"author":{"gitId":"annoy-o-mus"},"content":" return taskNumber;","lastModifiedDate":"2024-02-08"},{"lineNumber":34,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":35,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":36,"author":{"gitId":"annoy-o-mus"},"content":" public boolean isTaskDone() {","lastModifiedDate":"2024-02-08"},{"lineNumber":37,"author":{"gitId":"annoy-o-mus"},"content":" return isTaskDone;","lastModifiedDate":"2024-02-08"},{"lineNumber":38,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":39,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":40,"author":{"gitId":"annoy-o-mus"},"content":" public TaskType getTaskType() {","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"annoy-o-mus"},"content":" return taskType;","lastModifiedDate":"2024-02-09"},{"lineNumber":42,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":43,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":44,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-02"},{"lineNumber":45,"author":{"gitId":"annoy-o-mus"},"content":" * Sets the task description.","lastModifiedDate":"2024-02-02"},{"lineNumber":46,"author":{"gitId":"annoy-o-mus"},"content":" *","lastModifiedDate":"2024-02-02"},{"lineNumber":47,"author":{"gitId":"annoy-o-mus"},"content":" * @param taskDescription Description of the task.","lastModifiedDate":"2024-02-02"},{"lineNumber":48,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-02"},{"lineNumber":49,"author":{"gitId":"annoy-o-mus"},"content":" protected void setTaskDescription(String taskDescription) {","lastModifiedDate":"2024-02-09"},{"lineNumber":50,"author":{"gitId":"annoy-o-mus"},"content":" this.taskDescription \u003d taskDescription;","lastModifiedDate":"2024-02-02"},{"lineNumber":51,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":52,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":53,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-02"},{"lineNumber":54,"author":{"gitId":"annoy-o-mus"},"content":" * Give the newly created task an associated task number.","lastModifiedDate":"2024-02-02"},{"lineNumber":55,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-02"},{"lineNumber":56,"author":{"gitId":"annoy-o-mus"},"content":" private void setTaskNumber(int taskNumber) {","lastModifiedDate":"2024-02-08"},{"lineNumber":57,"author":{"gitId":"annoy-o-mus"},"content":" this.taskNumber \u003d taskNumber;","lastModifiedDate":"2024-02-08"},{"lineNumber":58,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":59,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":60,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-02"},{"lineNumber":61,"author":{"gitId":"annoy-o-mus"},"content":" * Sets the status of the associated task.","lastModifiedDate":"2024-02-02"},{"lineNumber":62,"author":{"gitId":"annoy-o-mus"},"content":" *","lastModifiedDate":"2024-02-02"},{"lineNumber":63,"author":{"gitId":"annoy-o-mus"},"content":" * @param isTaskDone Whether the task has been marked completed.","lastModifiedDate":"2024-02-02"},{"lineNumber":64,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-02"},{"lineNumber":65,"author":{"gitId":"annoy-o-mus"},"content":" private void setTaskStatus(boolean isTaskDone) {","lastModifiedDate":"2024-02-02"},{"lineNumber":66,"author":{"gitId":"annoy-o-mus"},"content":" this.isTaskDone \u003d isTaskDone;","lastModifiedDate":"2024-02-02"},{"lineNumber":67,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":68,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":69,"author":{"gitId":"annoy-o-mus"},"content":" private void setTaskType(TaskType taskType) {","lastModifiedDate":"2024-02-09"},{"lineNumber":70,"author":{"gitId":"annoy-o-mus"},"content":" this.taskType \u003d taskType;","lastModifiedDate":"2024-02-09"},{"lineNumber":71,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":72,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":73,"author":{"gitId":"annoy-o-mus"},"content":" private char getCharRepresentationOfTaskType() {","lastModifiedDate":"2024-02-09"},{"lineNumber":74,"author":{"gitId":"annoy-o-mus"},"content":" switch (getTaskType()) {","lastModifiedDate":"2024-02-09"},{"lineNumber":75,"author":{"gitId":"annoy-o-mus"},"content":" case TODO:","lastModifiedDate":"2024-02-09"},{"lineNumber":76,"author":{"gitId":"annoy-o-mus"},"content":" return \u0027T\u0027;","lastModifiedDate":"2024-02-09"},{"lineNumber":77,"author":{"gitId":"annoy-o-mus"},"content":" case EVENT:","lastModifiedDate":"2024-02-09"},{"lineNumber":78,"author":{"gitId":"annoy-o-mus"},"content":" return \u0027E\u0027;","lastModifiedDate":"2024-02-09"},{"lineNumber":79,"author":{"gitId":"annoy-o-mus"},"content":" case DEADLINE:","lastModifiedDate":"2024-02-09"},{"lineNumber":80,"author":{"gitId":"annoy-o-mus"},"content":" return \u0027D\u0027;","lastModifiedDate":"2024-02-09"},{"lineNumber":81,"author":{"gitId":"annoy-o-mus"},"content":" case INVALID:","lastModifiedDate":"2024-02-09"},{"lineNumber":82,"author":{"gitId":"annoy-o-mus"},"content":" return \u0027I\u0027;","lastModifiedDate":"2024-02-09"},{"lineNumber":83,"author":{"gitId":"annoy-o-mus"},"content":" default:","lastModifiedDate":"2024-02-09"},{"lineNumber":84,"author":{"gitId":"annoy-o-mus"},"content":" return \u0027?\u0027;","lastModifiedDate":"2024-02-09"},{"lineNumber":85,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":86,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":87,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":88,"author":{"gitId":"annoy-o-mus"},"content":" public void printTask() {","lastModifiedDate":"2024-02-08"},{"lineNumber":89,"author":{"gitId":"annoy-o-mus"},"content":" System.out.format(\"%d.[%c][%c] %s\" + System.lineSeparator(),","lastModifiedDate":"2024-02-09"},{"lineNumber":90,"author":{"gitId":"annoy-o-mus"},"content":" getTaskNumber(),","lastModifiedDate":"2024-02-08"},{"lineNumber":91,"author":{"gitId":"annoy-o-mus"},"content":" getCharRepresentationOfTaskType(),","lastModifiedDate":"2024-02-09"},{"lineNumber":92,"author":{"gitId":"annoy-o-mus"},"content":" isTaskDone() ? \u0027X\u0027 : \u0027 \u0027,","lastModifiedDate":"2024-02-08"},{"lineNumber":93,"author":{"gitId":"annoy-o-mus"},"content":" getTaskDescription());","lastModifiedDate":"2024-02-08"},{"lineNumber":94,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":95,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":96,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-02"},{"lineNumber":97,"author":{"gitId":"annoy-o-mus"},"content":" * Marks the task as done.","lastModifiedDate":"2024-02-02"},{"lineNumber":98,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-02"},{"lineNumber":99,"author":{"gitId":"annoy-o-mus"},"content":" public void markAsDone() {","lastModifiedDate":"2024-02-02"},{"lineNumber":100,"author":{"gitId":"annoy-o-mus"},"content":" setTaskStatus(true);","lastModifiedDate":"2024-02-02"},{"lineNumber":101,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Cool, this task is now done:\");","lastModifiedDate":"2024-02-02"},{"lineNumber":102,"author":{"gitId":"annoy-o-mus"},"content":" printTask();","lastModifiedDate":"2024-02-09"},{"lineNumber":103,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":104,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":105,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-02"},{"lineNumber":106,"author":{"gitId":"annoy-o-mus"},"content":" * Marks the task as undone.","lastModifiedDate":"2024-02-02"},{"lineNumber":107,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-02"},{"lineNumber":108,"author":{"gitId":"annoy-o-mus"},"content":" public void markAsUndone() {","lastModifiedDate":"2024-02-02"},{"lineNumber":109,"author":{"gitId":"annoy-o-mus"},"content":" setTaskStatus(false);","lastModifiedDate":"2024-02-02"},{"lineNumber":110,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Oh okay, this task is now marked as undone:\");","lastModifiedDate":"2024-02-02"},{"lineNumber":111,"author":{"gitId":"annoy-o-mus"},"content":" printTask();","lastModifiedDate":"2024-02-09"},{"lineNumber":112,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":113,"author":{"gitId":"annoy-o-mus"},"content":"}","lastModifiedDate":"2024-02-02"}],"authorContributionMap":{"annoy-o-mus":113}},{"path":"src/main/java/task/TaskManager.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"annoy-o-mus"},"content":"package task;","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":3,"author":{"gitId":"annoy-o-mus"},"content":"import java.util.ArrayList;","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":5,"author":{"gitId":"annoy-o-mus"},"content":"public class TaskManager {","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"annoy-o-mus"},"content":" private static int numberOfActiveTasks \u003d 0;","lastModifiedDate":"2024-02-08"},{"lineNumber":7,"author":{"gitId":"annoy-o-mus"},"content":" private static ArrayList\u003cTask\u003e taskList \u003d new ArrayList\u003cTask\u003e();","lastModifiedDate":"2024-02-08"},{"lineNumber":8,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":9,"author":{"gitId":"annoy-o-mus"},"content":" public static void createNewTask(String taskDescription, Task.TaskType taskType) {","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"annoy-o-mus"},"content":" if (taskDescription.isEmpty()) {","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Invalid Task: Task Description is empty\");","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"annoy-o-mus"},"content":" return;","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"annoy-o-mus"},"content":" if (taskType \u003d\u003d Task.TaskType.INVALID) {","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Invalid Task Type\");","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"annoy-o-mus"},"content":" return;","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"annoy-o-mus"},"content":" // We currently do not check if the deadline and event tasks has the right format i.e. `/by`, `/to`, `/from`.","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"annoy-o-mus"},"content":" // As long as there is a description, we shall accept the new task","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"annoy-o-mus"},"content":" // Todo: Add a default clause to catch any new unhandled task types","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"annoy-o-mus"},"content":" numberOfActiveTasks +\u003d 1;","lastModifiedDate":"2024-02-08"},{"lineNumber":23,"author":{"gitId":"annoy-o-mus"},"content":" Task newTask \u003d null;","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"annoy-o-mus"},"content":" switch (taskType) {","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"annoy-o-mus"},"content":" case TODO:","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"annoy-o-mus"},"content":" newTask \u003d new Todo(taskDescription, numberOfActiveTasks);","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Alright. I have added this todo task: \");","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"annoy-o-mus"},"content":" break;","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"annoy-o-mus"},"content":" case DEADLINE:","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"annoy-o-mus"},"content":" newTask \u003d new Deadline(taskDescription, numberOfActiveTasks);","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Alright. I have added this deadline: \");","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"annoy-o-mus"},"content":" break;","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"annoy-o-mus"},"content":" case EVENT:","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"annoy-o-mus"},"content":" newTask \u003d new Event(taskDescription, numberOfActiveTasks);","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Alright. I have added this event: \");","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"annoy-o-mus"},"content":" break;","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":39,"author":{"gitId":"annoy-o-mus"},"content":" newTask.printTask();","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"annoy-o-mus"},"content":" taskList.add(newTask);","lastModifiedDate":"2024-02-08"},{"lineNumber":41,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Now you have \" + numberOfActiveTasks + \" tasks in the list.\");","lastModifiedDate":"2024-02-09"},{"lineNumber":42,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":43,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":44,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-08"},{"lineNumber":45,"author":{"gitId":"annoy-o-mus"},"content":" * Prints out the whole list of tasks that have been added so far.","lastModifiedDate":"2024-02-08"},{"lineNumber":46,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-08"},{"lineNumber":47,"author":{"gitId":"annoy-o-mus"},"content":" public static void printTaskList() {","lastModifiedDate":"2024-02-08"},{"lineNumber":48,"author":{"gitId":"annoy-o-mus"},"content":" System.out.println(\"Here are the tasks at hand:\");","lastModifiedDate":"2024-02-08"},{"lineNumber":49,"author":{"gitId":"annoy-o-mus"},"content":" for (Task t : taskList) {","lastModifiedDate":"2024-02-08"},{"lineNumber":50,"author":{"gitId":"annoy-o-mus"},"content":" t.printTask();","lastModifiedDate":"2024-02-08"},{"lineNumber":51,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":52,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":53,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":54,"author":{"gitId":"annoy-o-mus"},"content":" /**","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"annoy-o-mus"},"content":" * Retrieves the task associated by its task number.","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"annoy-o-mus"},"content":" *","lastModifiedDate":"2024-02-09"},{"lineNumber":57,"author":{"gitId":"annoy-o-mus"},"content":" * @param taskNumber The task number to retrieve.","lastModifiedDate":"2024-02-09"},{"lineNumber":58,"author":{"gitId":"annoy-o-mus"},"content":" * @return The task associated with the task number. `null` if the task is not found.","lastModifiedDate":"2024-02-09"},{"lineNumber":59,"author":{"gitId":"annoy-o-mus"},"content":" */","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"annoy-o-mus"},"content":" private static Task retrieveTask(int taskNumber) {","lastModifiedDate":"2024-02-09"},{"lineNumber":61,"author":{"gitId":"annoy-o-mus"},"content":" for (Task task : taskList) {","lastModifiedDate":"2024-02-09"},{"lineNumber":62,"author":{"gitId":"annoy-o-mus"},"content":" if (task.getTaskNumber() \u003d\u003d taskNumber) {","lastModifiedDate":"2024-02-09"},{"lineNumber":63,"author":{"gitId":"annoy-o-mus"},"content":" return task;","lastModifiedDate":"2024-02-09"},{"lineNumber":64,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":65,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":66,"author":{"gitId":"annoy-o-mus"},"content":" return null;","lastModifiedDate":"2024-02-09"},{"lineNumber":67,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":68,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":69,"author":{"gitId":"annoy-o-mus"},"content":" public static void markTaskAsDone(int taskNumber) {","lastModifiedDate":"2024-02-08"},{"lineNumber":70,"author":{"gitId":"annoy-o-mus"},"content":" Task taskToMark \u003d retrieveTask(taskNumber);","lastModifiedDate":"2024-02-08"},{"lineNumber":71,"author":{"gitId":"annoy-o-mus"},"content":" if (taskToMark !\u003d null) {","lastModifiedDate":"2024-02-08"},{"lineNumber":72,"author":{"gitId":"annoy-o-mus"},"content":" taskToMark.markAsDone();","lastModifiedDate":"2024-02-08"},{"lineNumber":73,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":74,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":75,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":76,"author":{"gitId":"annoy-o-mus"},"content":" public static void markTaskAsUndone(int taskNumber) {","lastModifiedDate":"2024-02-08"},{"lineNumber":77,"author":{"gitId":"annoy-o-mus"},"content":" Task taskToMark \u003d retrieveTask(taskNumber);","lastModifiedDate":"2024-02-08"},{"lineNumber":78,"author":{"gitId":"annoy-o-mus"},"content":" if (taskToMark !\u003d null) {","lastModifiedDate":"2024-02-08"},{"lineNumber":79,"author":{"gitId":"annoy-o-mus"},"content":" taskToMark.markAsUndone();","lastModifiedDate":"2024-02-08"},{"lineNumber":80,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":81,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":82,"author":{"gitId":"annoy-o-mus"},"content":"}","lastModifiedDate":"2024-02-08"}],"authorContributionMap":{"annoy-o-mus":82}},{"path":"src/main/java/task/Todo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"annoy-o-mus"},"content":"package task;","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"annoy-o-mus"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"annoy-o-mus"},"content":"public class Todo extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"annoy-o-mus"},"content":" public Todo(String eventDescription, int taskNumber) {","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"annoy-o-mus"},"content":" super(eventDescription, taskNumber, TaskType.TODO);","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"annoy-o-mus"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"annoy-o-mus"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"annoy-o-mus":7}},{"path":"text-ui-test/runtest.bat","fileType":"bat","lines":[{"lineNumber":1,"author":{"gitId":"-"},"content":"@ECHO OFF","lastModifiedDate":"2020-05-25"},{"lineNumber":2,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":3,"author":{"gitId":"-"},"content":"REM create bin directory if it doesn\u0027t exist","lastModifiedDate":"2020-05-25"},{"lineNumber":4,"author":{"gitId":"-"},"content":"if not exist ..\\bin mkdir ..\\bin","lastModifiedDate":"2020-05-25"},{"lineNumber":5,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":6,"author":{"gitId":"-"},"content":"REM delete output from previous run","lastModifiedDate":"2020-05-25"},{"lineNumber":7,"author":{"gitId":"-"},"content":"if exist ACTUAL.TXT del ACTUAL.TXT","lastModifiedDate":"2020-08-25"},{"lineNumber":8,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":9,"author":{"gitId":"-"},"content":"REM compile the code into the bin folder","lastModifiedDate":"2020-05-25"},{"lineNumber":10,"author":{"gitId":"-"},"content":"javac -cp ..\\src\\main\\java -Xlint:none -d ..\\bin ..\\src\\main\\java\\*.java","lastModifiedDate":"2020-08-25"},{"lineNumber":11,"author":{"gitId":"-"},"content":"IF ERRORLEVEL 1 (","lastModifiedDate":"2020-05-25"},{"lineNumber":12,"author":{"gitId":"-"},"content":" echo ********** BUILD FAILURE **********","lastModifiedDate":"2020-05-25"},{"lineNumber":13,"author":{"gitId":"-"},"content":" exit /b 1","lastModifiedDate":"2020-05-25"},{"lineNumber":14,"author":{"gitId":"-"},"content":")","lastModifiedDate":"2020-05-25"},{"lineNumber":15,"author":{"gitId":"-"},"content":"REM no error here, errorlevel \u003d\u003d 0","lastModifiedDate":"2020-05-25"},{"lineNumber":16,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":17,"author":{"gitId":"-"},"content":"REM run the program, feed commands from input.txt file and redirect the output to the ACTUAL.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":18,"author":{"gitId":"annoy-o-mus"},"content":"java -classpath ..\\bin AnonBot \u003c input.txt \u003e ACTUAL.TXT","lastModifiedDate":"2024-02-08"},{"lineNumber":19,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":20,"author":{"gitId":"-"},"content":"REM compare the output to the expected output","lastModifiedDate":"2020-05-25"},{"lineNumber":21,"author":{"gitId":"-"},"content":"FC ACTUAL.TXT EXPECTED.TXT","lastModifiedDate":"2020-05-25"}],"authorContributionMap":{"annoy-o-mus":1,"-":20}},{"path":"text-ui-test/runtest.sh","fileType":"sh","lines":[{"lineNumber":1,"author":{"gitId":"-"},"content":"#!/usr/bin/env bash","lastModifiedDate":"2020-05-25"},{"lineNumber":2,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":3,"author":{"gitId":"-"},"content":"# create bin directory if it doesn\u0027t exist","lastModifiedDate":"2020-05-25"},{"lineNumber":4,"author":{"gitId":"-"},"content":"if [ ! -d \"../bin\" ]","lastModifiedDate":"2020-05-25"},{"lineNumber":5,"author":{"gitId":"-"},"content":"then","lastModifiedDate":"2020-05-25"},{"lineNumber":6,"author":{"gitId":"-"},"content":" mkdir ../bin","lastModifiedDate":"2020-05-25"},{"lineNumber":7,"author":{"gitId":"-"},"content":"fi","lastModifiedDate":"2020-05-25"},{"lineNumber":8,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":9,"author":{"gitId":"-"},"content":"# delete output from previous run","lastModifiedDate":"2020-05-25"},{"lineNumber":10,"author":{"gitId":"-"},"content":"if [ -e \"./ACTUAL.TXT\" ]","lastModifiedDate":"2020-05-25"},{"lineNumber":11,"author":{"gitId":"-"},"content":"then","lastModifiedDate":"2020-05-25"},{"lineNumber":12,"author":{"gitId":"-"},"content":" rm ACTUAL.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":13,"author":{"gitId":"-"},"content":"fi","lastModifiedDate":"2020-05-25"},{"lineNumber":14,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":15,"author":{"gitId":"-"},"content":"# compile the code into the bin folder, terminates if error occurred","lastModifiedDate":"2020-05-25"},{"lineNumber":16,"author":{"gitId":"-"},"content":"if ! javac -cp ../src/main/java -Xlint:none -d ../bin ../src/main/java/*.java","lastModifiedDate":"2020-08-25"},{"lineNumber":17,"author":{"gitId":"-"},"content":"then","lastModifiedDate":"2020-05-25"},{"lineNumber":18,"author":{"gitId":"-"},"content":" echo \"********** BUILD FAILURE **********\"","lastModifiedDate":"2020-05-25"},{"lineNumber":19,"author":{"gitId":"-"},"content":" exit 1","lastModifiedDate":"2020-05-25"},{"lineNumber":20,"author":{"gitId":"-"},"content":"fi","lastModifiedDate":"2020-05-25"},{"lineNumber":21,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":22,"author":{"gitId":"-"},"content":"# run the program, feed commands from input.txt file and redirect the output to the ACTUAL.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":23,"author":{"gitId":"annoy-o-mus"},"content":"java -classpath ../bin AnonBot \u003c input.txt \u003e ACTUAL.TXT","lastModifiedDate":"2024-02-08"},{"lineNumber":24,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":25,"author":{"gitId":"-"},"content":"# convert to UNIX format","lastModifiedDate":"2020-05-25"},{"lineNumber":26,"author":{"gitId":"-"},"content":"cp EXPECTED.TXT EXPECTED-UNIX.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":27,"author":{"gitId":"-"},"content":"dos2unix ACTUAL.TXT EXPECTED-UNIX.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":28,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":29,"author":{"gitId":"-"},"content":"# compare the output to the expected output","lastModifiedDate":"2020-05-25"},{"lineNumber":30,"author":{"gitId":"-"},"content":"diff ACTUAL.TXT EXPECTED-UNIX.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":31,"author":{"gitId":"-"},"content":"if [ $? -eq 0 ]","lastModifiedDate":"2020-05-25"},{"lineNumber":32,"author":{"gitId":"-"},"content":"then","lastModifiedDate":"2020-05-25"},{"lineNumber":33,"author":{"gitId":"-"},"content":" echo \"Test result: PASSED\"","lastModifiedDate":"2020-05-25"},{"lineNumber":34,"author":{"gitId":"-"},"content":" exit 0","lastModifiedDate":"2020-05-25"},{"lineNumber":35,"author":{"gitId":"-"},"content":"else","lastModifiedDate":"2020-05-25"},{"lineNumber":36,"author":{"gitId":"-"},"content":" echo \"Test result: FAILED\"","lastModifiedDate":"2020-05-25"},{"lineNumber":37,"author":{"gitId":"-"},"content":" exit 1","lastModifiedDate":"2020-05-25"},{"lineNumber":38,"author":{"gitId":"-"},"content":"fi","lastModifiedDate":"2020-05-25"}],"authorContributionMap":{"annoy-o-mus":1,"-":37}}] diff --git a/annoy-o-mus_ip_master/commits.json b/annoy-o-mus_ip_master/commits.json index 1cbaecf0..1aff9817 100644 --- a/annoy-o-mus_ip_master/commits.json +++ b/annoy-o-mus_ip_master/commits.json @@ -1 +1 @@ -{"authorDailyContributionsMap":{"annoy-o-mus":[{"date":"2024-01-26","commitResults":[{"hash":"a32f4e8c501a2ef5d5254ce648460a5c8b8a3f6d","isMergeCommit":false,"messageTitle":"feat: Add greetings","messageBody":"","tags":["level-0"],"fileTypesAndContributionMap":{"java":{"insertions":16,"deletions":6}}}]},{"date":"2024-02-01","commitResults":[{"hash":"18e7c4e29c28d843c53ac4a9515494ef3a3edc91","isMergeCommit":false,"messageTitle":"refactor: Make logo and section bar text final","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":13,"deletions":12}}}]},{"date":"2024-02-02","commitResults":[{"hash":"20254fc7e0fbaf0d58dac9fa1a0b9a3d2cac1d99","isMergeCommit":false,"messageTitle":"refactor: Make greeting and goodbye as methods","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":23,"deletions":5}}},{"hash":"55c0350b5d298a85708e638970d40b446d032cf0","isMergeCommit":false,"messageTitle":"docs: Update ASCII art logo","messageBody":"","fileTypesAndContributionMap":{"md":{"insertions":6,"deletions":6}}},{"hash":"d28aadecd8c6670de8422cd2e77a2eec58d4a44b","isMergeCommit":false,"messageTitle":"feat: Echo back user inputs","messageBody":"","tags":["Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":23,"deletions":1}}},{"hash":"81ebd50bb4655c95a9d69912ba8a9e0bdca65e6c","isMergeCommit":false,"messageTitle":"feat: Add task listing functionality","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":23,"deletions":5}}},{"hash":"91f6dbe387f8077cc43650024dbd9c9fbd26ee5e","isMergeCommit":false,"messageTitle":"refactor: Shift goodbye invocation","messageBody":"","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":5,"deletions":4}}},{"hash":"b8a8b1e68bdd03ec177d545588eab83882edf5e3","isMergeCommit":false,"messageTitle":"refactor: Shift task related code to Task class","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":63,"deletions":8}}},{"hash":"d1abd6f089393175868ffa87ef4bdb068cd4d05f","isMergeCommit":false,"messageTitle":"feat: Add task marking and unmarking","messageBody":"Introduces functionality to mark and unmark tasks and track the status\nof tasks.\n\nTask listing now reflects status of the task on top of description.\n\nBasic error handling added to deal with `mark` and `unmark` commands\nnot having a compulsory task number supplied to it.\n","tags":["Level-3","A-CodingStandard"],"fileTypesAndContributionMap":{"java":{"insertions":90,"deletions":5}}}]},{"date":"2024-02-08","commitResults":[{"hash":"72b288bceaacd6b679541f0ea6b918ed0a1d08c8","isMergeCommit":false,"messageTitle":"misc: Change name from Duke to AnonBot","messageBody":"Renames the program.\n\nAlso changes the test scripts and documenataion to reflect\nthe new changes.\n","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1},"bat":{"insertions":1,"deletions":1},"sh":{"insertions":1,"deletions":1},"md":{"insertions":1,"deletions":1}}},{"hash":"e68bec47a513c2ff42188ff4c4f46ebdf08faa73","isMergeCommit":false,"messageTitle":"refactor: Create Task Manager to manage Tasks","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":78,"deletions":48}}},{"hash":"3b39d2d5889e5e6b8fbd8871531c587d7c682d59","isMergeCommit":false,"messageTitle":"refactor: Decouple functionalities from AnonBot","messageBody":"Reintroduced functionalities as classes\n\n* CommandManager - Processes the user\u0027s inputs as commands\n* Parser - Handles Parsing related activities\n* Status - Enum file containing status codes\n* Ui - Functionalities relating to interating with user\n","fileTypesAndContributionMap":{"java":{"insertions":116,"deletions":102}}},{"hash":"1a4b6ba0da0a8807ee16ea83e0f223b1c5bf0532","isMergeCommit":false,"messageTitle":"refactor: Split User input into command and argument","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":10,"deletions":4}}}]},{"date":"2024-02-09","commitResults":[{"hash":"d3db445361cd48fdbb168d95fe5e97a781c14147","isMergeCommit":false,"messageTitle":"fix: Add input checks","messageBody":"* Now Checks for empty user input\n* User inputs now split into Command and optional argument\n* Checks the argument associated with `mark` and `unmark` commands\nto make sure it is correctly supplied\n","fileTypesAndContributionMap":{"java":{"insertions":53,"deletions":11}}},{"hash":"0635d875b6df8052f91c95d6a0af787d409a7fc4","isMergeCommit":false,"messageTitle":"feat: Add support for todo, deadline, event","messageBody":"This currently does not support the specific date/time feature\n","fileTypesAndContributionMap":{"java":{"insertions":104,"deletions":8}}},{"hash":"52372c794d5894094b8c688e6e4ff90ee1c4d1e3","isMergeCommit":false,"messageTitle":"feat: Add parsing support for deadline and event","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":28,"deletions":0}}},{"hash":"89de65f7410f40d5f778cd91a91d17c4a813787c","isMergeCommit":false,"messageTitle":"feat: Print task upon creation","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":4,"deletions":0}}}]}]},"authorFileTypeContributionMap":{"annoy-o-mus":{"java":438,"md":6,"fxml":0,"sh":1,"bat":1,"gradle":0,"txt":0}},"authorContributionVariance":{"annoy-o-mus":9717.051},"authorDisplayNameMap":{"annoy-o-mus":"CS2113T-T09-1 NEO ..XUAN"}} +{"authorDailyContributionsMap":{"annoy-o-mus":[{"date":"2024-01-26","commitResults":[{"hash":"a32f4e8c501a2ef5d5254ce648460a5c8b8a3f6d","isMergeCommit":false,"messageTitle":"feat: Add greetings","messageBody":"","tags":["level-0"],"fileTypesAndContributionMap":{"java":{"insertions":16,"deletions":6}}}]},{"date":"2024-02-01","commitResults":[{"hash":"18e7c4e29c28d843c53ac4a9515494ef3a3edc91","isMergeCommit":false,"messageTitle":"refactor: Make logo and section bar text final","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":13,"deletions":12}}}]},{"date":"2024-02-02","commitResults":[{"hash":"20254fc7e0fbaf0d58dac9fa1a0b9a3d2cac1d99","isMergeCommit":false,"messageTitle":"refactor: Make greeting and goodbye as methods","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":23,"deletions":5}}},{"hash":"55c0350b5d298a85708e638970d40b446d032cf0","isMergeCommit":false,"messageTitle":"docs: Update ASCII art logo","messageBody":"","fileTypesAndContributionMap":{"md":{"insertions":6,"deletions":6}}},{"hash":"d28aadecd8c6670de8422cd2e77a2eec58d4a44b","isMergeCommit":false,"messageTitle":"feat: Echo back user inputs","messageBody":"","tags":["Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":23,"deletions":1}}},{"hash":"81ebd50bb4655c95a9d69912ba8a9e0bdca65e6c","isMergeCommit":false,"messageTitle":"feat: Add task listing functionality","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":23,"deletions":5}}},{"hash":"91f6dbe387f8077cc43650024dbd9c9fbd26ee5e","isMergeCommit":false,"messageTitle":"refactor: Shift goodbye invocation","messageBody":"","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":5,"deletions":4}}},{"hash":"b8a8b1e68bdd03ec177d545588eab83882edf5e3","isMergeCommit":false,"messageTitle":"refactor: Shift task related code to Task class","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":63,"deletions":8}}},{"hash":"d1abd6f089393175868ffa87ef4bdb068cd4d05f","isMergeCommit":false,"messageTitle":"feat: Add task marking and unmarking","messageBody":"Introduces functionality to mark and unmark tasks and track the status\nof tasks.\n\nTask listing now reflects status of the task on top of description.\n\nBasic error handling added to deal with `mark` and `unmark` commands\nnot having a compulsory task number supplied to it.\n","tags":["Level-3","A-CodingStandard"],"fileTypesAndContributionMap":{"java":{"insertions":90,"deletions":5}}}]},{"date":"2024-02-08","commitResults":[{"hash":"72b288bceaacd6b679541f0ea6b918ed0a1d08c8","isMergeCommit":false,"messageTitle":"misc: Change name from Duke to AnonBot","messageBody":"Renames the program.\n\nAlso changes the test scripts and documenataion to reflect\nthe new changes.\n","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1},"bat":{"insertions":1,"deletions":1},"sh":{"insertions":1,"deletions":1},"md":{"insertions":1,"deletions":1}}},{"hash":"e68bec47a513c2ff42188ff4c4f46ebdf08faa73","isMergeCommit":false,"messageTitle":"refactor: Create Task Manager to manage Tasks","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":78,"deletions":48}}},{"hash":"3b39d2d5889e5e6b8fbd8871531c587d7c682d59","isMergeCommit":false,"messageTitle":"refactor: Decouple functionalities from AnonBot","messageBody":"Reintroduced functionalities as classes\n\n* CommandManager - Processes the user\u0027s inputs as commands\n* Parser - Handles Parsing related activities\n* Status - Enum file containing status codes\n* Ui - Functionalities relating to interating with user\n","fileTypesAndContributionMap":{"java":{"insertions":116,"deletions":102}}},{"hash":"1a4b6ba0da0a8807ee16ea83e0f223b1c5bf0532","isMergeCommit":false,"messageTitle":"refactor: Split User input into command and argument","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":10,"deletions":4}}}]},{"date":"2024-02-09","commitResults":[{"hash":"d3db445361cd48fdbb168d95fe5e97a781c14147","isMergeCommit":false,"messageTitle":"fix: Add input checks","messageBody":"* Now Checks for empty user input\n* User inputs now split into Command and optional argument\n* Checks the argument associated with `mark` and `unmark` commands\nto make sure it is correctly supplied\n","fileTypesAndContributionMap":{"java":{"insertions":53,"deletions":11}}},{"hash":"0635d875b6df8052f91c95d6a0af787d409a7fc4","isMergeCommit":false,"messageTitle":"feat: Add support for todo, deadline, event","messageBody":"This currently does not support the specific date/time feature\n","fileTypesAndContributionMap":{"java":{"insertions":104,"deletions":8}}},{"hash":"52372c794d5894094b8c688e6e4ff90ee1c4d1e3","isMergeCommit":false,"messageTitle":"feat: Add parsing support for deadline and event","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":28,"deletions":0}}},{"hash":"89de65f7410f40d5f778cd91a91d17c4a813787c","isMergeCommit":false,"messageTitle":"feat: Print task upon creation","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":4,"deletions":0}}},{"hash":"09e665397e662b32dd2adaf5ea530ec057f11f51","isMergeCommit":false,"messageTitle":"refactor: Modify printing of logo and section bar","messageBody":"* remove \\n and replaceing it with the lineSeparator\n* Reduce the number of calls to the SECTION_BAR text\n","fileTypesAndContributionMap":{"java":{"insertions":28,"deletions":29}}},{"hash":"bdcfbe85f5c0ca6b32da275d504445fde7394a02","isMergeCommit":false,"messageTitle":"refactor: Streamline code flow for CommandManager","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":38,"deletions":33}}},{"hash":"80b5e6d606e8500e232879f6ece65dbf80fd1902","isMergeCommit":false,"messageTitle":"refactor: Make sectionBar priinting a call to Ui","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":14,"deletions":8}}},{"hash":"3d3868fc890845c9f57223bb76ffd503c97f7362","isMergeCommit":false,"messageTitle":"refactor: Shift parsing functionality to subtasks","messageBody":"Instead of having the TaskManager to handle the parsing of description\nspecific to deadline and event, we have those tasks handle it themselves\ninstead.\n","fileTypesAndContributionMap":{"java":{"insertions":149,"deletions":72}}},{"hash":"7b9cd2e7851cfebc1410384dec2c13fd4229fe89","isMergeCommit":false,"messageTitle":"style: Add and remove whitespaces","messageBody":"","tags":["Level-4","A-Inheritance","A-CodeQuality"],"fileTypesAndContributionMap":{"java":{"insertions":25,"deletions":25}}}]}]},"authorFileTypeContributionMap":{"annoy-o-mus":{"java":525,"md":6,"fxml":0,"sh":1,"bat":1,"gradle":0,"txt":0}},"authorContributionVariance":{"annoy-o-mus":23823.158},"authorDisplayNameMap":{"annoy-o-mus":"CS2113T-T09-1 NEO ..XUAN"}} diff --git a/archive.zip b/archive.zip index 73557ee22997a392ec7d1b02ad02b237cc53c8e9..3c19bb7ee0f10c3a6897ecbce38234a0952d6ffb 100644 GIT binary patch delta 98113 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 XtoZ?b80Js&r|H1cRNeP*Cl>o36Z+^P delta 79346 zcmZ6ybyQuw6D|zr;O>-C+=>-<*W&J8+}-Wq?(QxHipv2C6n7}@?(VMlE%*E5{yx?^ zBr|z-GHYee&NIp6zKH2Qkr7Ej8VH320S5;Maf?%nGztLR;?yqzU@`uc+gSK8|CM$4 zf=K@rsgT}KnDweuSHOR5lC;MN|4MdtJ*a@;D-&l z(f^ZE;}(F}_4v+SAIda0N#uW^?Vz;}xhKr!V_@z~;}1D6N9fZ>d(+8>VUsOj*ne_F zSJy|oY#%P-KiPC*<3pC1iT^Nad2ROt*S+U}_OG4o{`A8r@|R!m|HnOe`qmYo$s$KbFAG_It*L~0!R1>B5mE2OzsW=jpMU#pvgWWybU^s}KD8sET z{p+5|ySdNTKh@}~61O>^#5kCw6F~GbaZgsh)6Lp)h91h=;u&rhvqr@8 zJ9^xq=Mjde$qEU#(r3i2^BEF1x16ek{lEoHfpRneB0T;y?*@RNp~ zR=IwQ6(WZMcdkToyQgKT^RWRH6M}3R(G8}ZCrItboGIZ6B1s18a zZT@?@pv0bTq!|ER84XjY<6M!FdyA#~t+Y@$5VH5zQf6pKr}Peh=Td zqBUcZ8O`~Wd%1Hsvg(qu%In)f_Iou{UqKocj=%SJ7Zv~l!U7rs;{SD+)Fp=hUYoH@ zZM$W5tpDB|Y7IUvi7kna;vvF_N@_JD8xCSfZsI$j4O5d^`i&?}W&G~%*qJ`?pzC94 zf~ugRrjm0Eiihw17d=~|HZE1=^Qpw42WxRM-#d=>QnOs>T#3GflE>X_cQ?gRTO6kn zBD$(xbhD}7Z9aqJ{KfU?(rqIfy`aLf3?$6#I!>Ei_{vZpjE;o4e5k`^_|UMg~9$1G7NY!JNddzUT; zwzzO_lq1FvZC85x10gv-LEj`Ni|2M3a*SUH=l2=L&ut zDX}wiI)B#|K^6A~9LxulQ+?LgpfW2lRhs9gGMK3+f3_p3Kq{GHc&g~`J-flq->+7j z7lXxIWKSo9Yj^%^Z-U#}J)rT=JCNedZ9eB>SP6Kt9o}I@-Jfv^mQm!DBoR23Akb~? zjMTK3KL5BQCH_{)VLH5;fmxu`ZeT6cTW9w-g)Q+!Ofbs>uwJ41Gf=D1Bs!n|iMwwJ zNAznRU!@|{V2x>XdzcoJ@+#?E8nvUn0|nf3Np-Nj@LB+z@?N2qe+KAkl3f(fY0!B* zp}*BV4=&(}Zr{Shx+8+$9+e))0Db<|^L#;8xx+!ss!HDDQ|v3n3hqQ*}vXM+{^7dM7gvEf{6IQN;GuWf&h zX+^uu5e=FId@^wzx*0xS$Hfvy>=paX2zML?)C~)gMvBFu2+0TG_+OaEZdQ%Jfe1dG zbsIg?BI(ciZB7;tSJ`r;HS2yYgwh(z2)SeSoa1c3{UO^{u)VuMZzkujH}3?QGqY;N z_C|0C@CJ(rCx(k=<-rD4*$c^;jl@s;tAB<$?B+}JoJXX0n!_ry9B)*j*^BnS&*`gm z7kd&1&ppz))yjahw~YfK-+7B8qNu5SFc2K6FzV0_@qK_9nTK602-dvV5?$*RAV9v> z_;u{btqvvHTsA3~Vhi>HDPX9j0a%hiVft2Z13lic2L`MYEpeQ2@s5{1zbmD8xFTv= z?f|tqckOGt0|&R>*($KWpM&ScVVR4DqaMFhCH;{rOasM-q}TII$d^O+wCNa?Smf~M zmX3@oX_O7QkiK`3H-t$Vc$>EG#jvJWvMmZwN1K4U#k$v&hFImkBbKzlr6W;p>vg=h z8pvMhji#5WP#E=YWKM*mM2aGG=@WFjH`dwP=n)nMO)~fyaN_ex+**2EXeE@cieYjp zUO5$&w1RX;Mb9>Kl%nxJbst|ux({|F=giK_%QcvdS&*i`)mFK1CwSaW%r505Kxo7Q zm0NkGl-5nPP%|qm>;>`D=DY|_m03+kc#m>S5E+~&?WAN2M*V=v-2PjmDokN>jKlZl z?KX3(#hQJI_+p>0#N?Q^;%hYOd zQ(rHihaiczg-v|Lab)s4_OOh7CG?#TjFLOl;$M2TEEu0XP6?+GPMa{Fm@B`3wcq^G z?CQFcNiF>;|A`1!b3Hi&hmu1&jL9hR1&_rtDu<%86^cUudy?SUpkM8kdR(#k0Q%0x zYZLUP)m7`#$D+3sXQl%+Mp1_oy5x$Hj3Sy2?ibC-m3Nz_=h5-NfWo_TjFQ){p_1xco{=!`vafuQ2lL0dq@0?c6h=(iqg^vX*lMl8ICu$be1*+pB%la^j zD1{;Jr`4R);GeOteDY?F9ADYX2mEPzqMQbuKYW_p^eE3*cV@>vG;bJgG5=Ims*}2a z;q$IJl0L>OxIYb74Or(wQNfMavSNo}DPGFJ*BP4~o5xMMl#$iULGyEUjX;AH!opD= zA&vs9`%F}1Ev4f(-o+nm{iNP^C~8@Zy7Hgv~i13w* za3^5a0wT@x)-j#I8t;AWS9M8NDcOw&iGA_jxr%6**w~)jH{ic@nd&J7&m0pL0wPNM ze-~!34F_b)KgtOH$_+{Wj|+n3gdoZOkwmbQC}hY7`FoauHj-=5hVHthUXXL%Lj(52D1HQtcMQB>krIn7bMX?)(S=$h4lK+M2t8Qs4PA)}Yx>VnK@*m)CmTB@y*g z=2L?(e``n@jFN(g^N!A?^30Mi*5Bp-?C-M}R7AFF=EtqpRXLL-s71CaY4Zwuhg8x3 z9L5h@AMaGe?CsRS;jG%Ppfwt=Z^8sBFbkyA zA7Gp^F0w8Q*Wl^a2ab_h|5N2Z_-<{}762|NyPqNP`$YHXUJlALmZ=9o1a z;~`@vN{@3sh$+Is{)6f~bnUOtsiH`2*`J5Tg8u;VlD^V$zCKpZP`aq&_ugqc(Bg<( zwgdBHjx*WOI>aa~A&<~%jhN^vO-(uX=D?M$mBYPH+#q?10oM)VLD7A>I*429#8qQz z-N)duoA<99yWWBOoNs$QW#azr8T`}RCjP&7NECM~mJJdD;`+be|8ToKC;$tnGHG49 z=U-ItN;}R=T_y0!#6biF^7ER&g(jL)tYbeeuu;ko{kr_-#;{5mhG27vFjh={|9W%Q zd>E0W!Z4Kfljag(IQU*%;HR6}TDlbjIRE?SV?B|Yr971yz?y!cxy}a!Y?l}U5I!qE3N_O2L zFDp@`r7j%9GM^wCT5Yi5g>4H(@kak%T}JNKaVcpznW}A^`ek1{X&c^N;pBi751X=& zfs;)486et7;Ioo#e1k7(lOkiR3Y!y7ufR#S@wQqNdeK_+8H2_EKy5gTU};fBcEw@f zzW3mdsrLeb^zu&9R+g@Th+1cyNAb0v4t)X%7VRr_@G@%ESX84#=6EptQq(NY53^@R zuzSUpQ(+5MY(s2d;X?8&O$9Dsj4RRGdQXObEKg@3+WnrR65fMgp3O#XF~3S|vo10~BkO*5i}oWCGM%bD~a z9`q!fu1Fy!r7NX1*+ZhxS|oq^!ec}`Aw%^}uqZnnl7vFvE_ys_seZogwo8i;$!N1g z_O)X7hjM5WYor3Z%RS+qv$t4mZBCXv?tm;`{x*a9jF2FANkF)BZ*Q1GhQjiwsR?I~ ztzxk4V1_V9G)Qy2l-)?&ETwcb&vcx&t8y!i2S_(R%w0ho%{F|-*M!OYMQXA(w7e&1 zyyn;-0N3Q_Qx)uZe0@px?!cSbJI@Ogppop{^culT1J*G>pq4bswyDE%h50NB^ibCw zx%=gJ;L@sUE6x(`@qFD`4FTLlt=!KZgn4=EMlBz03eaz)UJ;}uU^O-;sztw&T^v5V zpOi6|R4Q#c?h>}eT{RN_*z+CFr+ywZcVX*Dru(8_4(BGq6LOjDslXb^$WMkRxQ*>< z_q?6t>!kf;wL3BRab6WgN&Qm(9#xfKB;{;vBj>K>n}l6LLdmV;0H*lct*XN4pSt9v zB<;bT01%Z4u7uy&fRp6@VTyAL#cIj8gDDgCQgJXYKPJssq>iC!l41-zK{V?7>Ke<+*)kszs28A+~3t=j$ERxoj&8%42wTVqkZGk*nLGt*? zL*vUy_teOYhXb)F)P?-J+!&c*cBJBe_~2#rtULh+qwPCg-)+*A!3y{HJ7i?lPl=`q32M$ zRjd60`JZQ1yHp?4{TCD4{yzZuM@II`G}lgw~F zu^`Om&UO}`f+Qt@XA}DgVg7x4(v3kdo|!^1xt4fZgemM1&UMFO(Ix{17qJSO`WWBR)BE~EOKGaf5*mj{YT>s##dfCA=R{H zjq0tO$V|PNbJwFpzB6+c8RFSYY@C_Q9IAYC7>-i*5G;)%!=2P1&DeK1c6s9kEqLyT zS(0+8=dyk#J|EQxK?szaWZw>P&hki~*TE1Y290in-t`AzdZP~dI^FC76`&cL4;{c5 z33R+E5_V;9w1o=Cy@r(li%{t?K7U$pL2L(S*RkQw#)ruZ@BCi(26^peP!Y9!6R&bE*8^54ZxGn2|AdeJ-;yk7r z$ArvtoNZVp(*N3_R3#KiV|zn;)+39|?@04(m$SN z49;b&p!8~R9X=+g;KW!Ag!PRC{V1*exF`h#CM9hBAzdI514TkTbBR=;fY86ig0{%R zn6Hk!$z!it3VRVy1^n|%mka}5DS{hn~9gmZ+sSh z7%O=O|z}8SZk8cb=PyS<9Grh`WWF0SnbLgv{(#Wn#t}6RBjH&qnwROq4%z>u0Pi# zA73>*KdagGdBKR7gXUw_my4M=kj&g17P19fT^rWO#r#Ydzn__o>wnTWc--_7oYIwt znmW|w(b(T!82^SMf>B_VWIJ#9+b{WeaeA5GyWLWvqq6Lz)wT_k_&4~Q5*yOr6-!nK z!UdM4wgxZPX6R2r*SGpE1{m63yK)FLt&{`!crNDhpuFy|LO|4AdTd#hn(%iOLN?J- zHTuY*(+$7y-Tek>C=+5|Po{PXL!dyJXyQ!EiK_gE zv@c0%o%532H<$+R9%Cvh=1nHYdW8g8jd7NuDIZh1$nUP`O3dYx=;>%X8I8t{fEAmoEnnfm|; z|84B2`pY9?f-^$^caZ-`SYjA}=Od1qNC3!vurcBkz~7I!?y>;j{6Xf-$^kh4&K$s? zHURZUXXPD$!4D4S+za^o!SlpM0K^{{vsJ*;M?XfJfQ^qxPwWy9`T-ul15kg&hmSyD z?+4}&EO7io6N?RG`{=nJ7x?MlIYg?%+JD6I8XpM%Po4UYW~TlpVWhrXL!p6L2!Ve8 zx=d{(1G0c*?Uu#S+V9oTc(wa|K@WRNw&=u%Braamj%lme$r{o{f=V&bo$u`;T55$0 zisV9KE+pzY^!H_^eN-YlQl?(ymyDN2u8@ z;5SN%yY}t%W+jos635AH*8gG zzy53zhFGb(EyTEwAo{9NW^H>K=j7y!vm3w(E6|wxe@zM_hEv=UCm#i*2@fgu$4$Q( zSZWxcn@xm*N*JC>+}Cdwvf;uPguB6U?v#Z?q$Y7w5~%^vT<+O)*MMlC6as?now#GV z5|a)3v*D`&M1B8lZs!ke`?^Uf9@=(1eo4G)B+9J4n zWGqJF)Ur`iX+ihn=HuCQO2j*8sKtv4^!q(}?4tOf?{<(!Ke$yK9tqDK_8ZZ>o=1yKZ zP2kA|{fu!m5LS+uu!2`xlyT|(~yis1bAF5#zPsA)^yq1@mq|<#2gTyFUGn0EM!<6hP3o>UXdsbDsD7_{ z)nI+BfOzF3-Wv3iXbRj%62fGSo%uBww)0tt{32s2W>UkZ*-bRS-C*mxz^@~V`z=zc zt(w&U(x$wx=!1C7c_>4*#0_=v&{oL`NQq-G7!Z5{;@BR|hssfXfJ5y%<7)D@=8Y=B5kf)vIo-W>cI{qD~2WFU3pGoDnishXr? zD$Y&P&xh*@a9|T%yI=~9XM{acgeE4K21pr|RF4(2pnPQa!_UPGw3T*iR|(eREij{+ z6!9#t1Vhm}Ijt~_B0}MKCmA(&o7XcZjc)rXqv>@&X$S7M0SYem%X5+CB`k*Y2SM6- zvUYWk(098#mRYaQo>#RGi%oIqU@Lu@1-VQLmyrNN=qQu~CXF2#cm`w2R5944sl`!g z&I9r}j(J%(wUr6HmeS)5@I0J_-s}Rlhw8wO5k|EAfg6Q^CSq%CyljFV5lF4~#fuTo zF^;+C`}2_0#^8ckn9E{mUyadlJCNBfnm{Ym!N73?MHuJW9qQ}gV5*zXYm7iX#hU1f zZ~Rqvt{3US9>@G&f?+#nXV1pUt0T9rmbUB_W`WJVu>m*r{rx{U=j+Mx@&d0PJ9n5v z`Rvf@y$6pk3YL|3V6kcV7@Rjl5}*Xo={b)8`3E zBe0A9;Y_-PnYFxZcwBE9sS2Q>u;g*w4wC-{K=DK9h}SJkW=ny&Wumr2e8!Y`+8tFM79pG+LafvZ{1k%`GDORMLE=R{wskvyAUh54fZavQPWIxJ=b zrWL~eBymQYgG8dX(k&~L792N8u$TQXNOC8-Ouo%Oj|rVD!`JTQk{@$NzOPh(;7a#G zlx(Vy#EVi-MiR{doyrHjCJYlN9(@Hjiu?;d#yAXrPBq=*PZWMaJEns*!j^ntsL42T zObzUo5czJ#2Xo$KNdjrkRl^B=qtDZS68vC^%Mq`7c4K>8mTSJ~mkV_eQWH?Gf|#}g zdK*yxNavW33i<7B(U2YgifPQTWBPdZA^)oWDAU7_uiX8t z^uAm~1oQg+>Vh6(2pAs$k{Igw9p~TrmT?vaJCxVaN(P&k3#e)!T~`kz-YZaT{i;sW zL>Q!{xxQj|R!t$IOTF4B`qJ8(%RS7A1aAU^rsGKL=lte6daUb$D7tMwC0W?V|(#@LzcK#~;sxezZu z^z?0mv|DPP_awsL{~S2y1ZM)=WK1acoY>Dp#_xsi z3yw4Vhxc2~e|{x)m!V9r+Falk*=N)6!?Hk0Z3J5{Pzr{$K0diL@kt(t_4MK^VN6kd z1|TXGrsOa6Alp-7{ssQP1l8iqNm0)kHm_X~a_`ufGV@JRk{nAns5V?Quj2s|d5F3a zT$7+(c4ARQxtVP+V0+>hTC?@S=-#EHkr z4eU#PfO5?0{2A2G6e*-D#tZGf-yMnVJ+$7|(Pp`u@r{cXnIKd@3bY$yMf(smiLpUh zdI8-j%arg3A13xNg1P?hEJ%ZtGW=_3KC}AJYJZA9H!m-5nq9RG5=PW3Umi6XaAB#R zFrtD@-gDJ2{Z7L5v@7|oJ@qa7^>3OVu##d?qEqi}e(i+P&=I)b>U`yVIXG)&gJ^lH zf%B<(_tDbnN1_K#9thh2AHVJg5Zh>d-^jlY-C;tS-0ejx%4#jj9Hk^`9>y0ytW&~Y*c250JFdr#%kNhns{yEYzdxJW3jDcT zFpVIsY=a<%$@BpxK&+g~zT5DYs&UY0#m>c4Ys%A9>nM#`tAhBU&3F}3T4YV7ZAgO5 z3`(wF#}nbBGo4r)Mm>J9861~FiwtM4u_AMMCmA=ERC>=b^kaVd#J*j7yZKjqb*Mq4 z<|dRGymZQ*)h{ z`+YO1oE$J0D)t1zYx?BFgSkbRf*)H!m1eD;A|l%)QlB5}dgz%^5mG6Hegf*s`wD4U zIrPP8xt{HvNCT&3Yo%#JWn`iii$!E5dn{7%TfGJX&;`b|)OAFuSdj%P&qe&y5?6c- ztrabS9isdwYDuw0F*Eyq#%LzsGN>Doyq?Vu$?26vt=-vi zvpmG(0e)wj(b<)hoxJmlznF;L1>?(8vW{NzZSI2{)(Z3lAtkbUQ`nEx8v$W2p-7r! zPdeTUqSpLCBhxmypuX00N1*`}=^z%!Z;_0ad$g_wc^h^Q$P6!%F!y!{dYq0^_}rI< z@}0&!jCPNp+mMwqucOfmTF2}X=>dDE9By{wSw$;z9G96l{wpX*LE`ydGa6W4lc9NO zQEhaK&r|eDnxqa<7EGNo|1GTxi%6l8XtEfWG0_88Iv`tGvs{jPA2dHcitLzCffy>` zaH$wPQF!U*(R*Vu8;O$Ruxde`1hc=dg=#c+fH0`(NQd!r&d^g-;evfo6N=8D; zoA9>p-Mn^X&ZD{Y$A-YbbrF_`y{IHN@C(@s#P7uC)bzyjX2TTjtR`;AWLNYSVD{?~ zGgQkngTE^dd|*enrbGSH#+ZfiFs0L57I9RRXe?I`t>Maj&H65!TUj})m>uSEV~BnY zI-nrgL!a^(T`)fTMnIydqL*QQTjhW~MDtfumE0PoMR$WJ4BDuVDWQ*Tj|%QP%!cK- zSJ8emyKDj9qJVJF%3l2!J7wuVuIBe`MOXLknV%o&Lsq}}kS{i(t~q;PNE)tJA&{}B z3LlK1(???LVMJ!$$%0!W!U&B>Zb>mNK+-sh*Wt7@kv~b@lHe87hg5THQP|XRL;c2g zzc~2zTTROgm0)YTP{Dg`PU%fa|c4qS=LB>?EtExPivUn(V2 zM_jK+4Ad2Mq~OP4%$*Q^(kY>!qr)tkx^(Z4S;6ha#JVX8w5hUKlx ztRwUn^W`{h{i4-U4{EqMy~#{F0j2vVOU5=3BY_fpk~Q;FimvbY`LeXC5?Wn;uRd!< z7B!GVD{3|0#!x7BHP}{Cbh@Yu(c=st2Mi)Q$s3WdTTcBhK<(2ab&Rjm}JA!1`g3(9Ty)f;h0al%jbbV0#>>U^=!L2yr!qs2nTS3QeK zuM^WT5H~g$B6G>w%S=blFQ68tx`}VMl7U~x5F~SSHr$oWwh5Y&Xx$u(Eq@wpa9OJ)K8OsAoHZC0sbMqbDMJ()4LB6}+2xlp7YZU#)1o>{pRtj= z+F#8paCB+OhESCWmaOfYCP=Xv6L|#;kC;s&Tb%ewk00K8XxqG|KA)3C|y*XC&DkMnzcn*?fb`-`%0wDG!HH3{_SHC%NR$!T@Wgunciw4J#V1 zD#8FD_@@SQfOi1`Ht1*d)OZ=~mcv${_cyds33h00>iEb3N9f7OO6m%!#(K*tN2yBs zM9KEl#|=2NSK+6egIEdW%LgCQHPntDk~`NG@>fC$b>dq@3373s-1X0yO1jBv9?1i2 z^OK3VFm>{BB)(c$5eTM?EJ;HPkZ zt#feKew~w#_Aq5wdtX@Fz#A&XmOc-YDeH8Xph`*4UGzifW5wG^k%bJA#U&0yI^7|RwOOLu5A?fVCFp@!VEcTzKpe8#I9tg|=YQKl;w%5V}j(BT!n zP0+16<J6Mw1^cH3U;0EJP+;hK4Cdm2FQn`D|@=_$G@3KNG&lW>(%*h;1hS z>XyR4JUs+^+Wu@z=34K%uC?+Jbe;cZt#^Hdrh;vWt1Ol%pPf+G*upiCRO)&xssWDl zUw9E3bgJ;iM@?k%j{eJ8)BPn>zFROQ%f(X}G~=JP+$XxRhzLjhBlEjeGQY(%t_pi&Eh z9tQIED_OWh;E!M@~ zU`z7V&eyQ85JQUQ4<=lr@wAI|xsWz6Y&_kp;eV(S+*`sqDR)DO#HsFY%jn9)q7KKa z>%`~qqFX15#9r*!ECn@0B*9|0%2&35yc1muZY|Z~Q}vIp3v^}bO?VQ6Vq>S5SA}Au zT$Oi}8?|~w>TK!0zjB%9&5O{j%jQ$Y-dno;ZCXFzua=rGmSv`L$*dwWA%3I6Kck5n ziJ^sE4I^e?xR@ytE$O>Aw`|tdFVEvKy7cV#&G;p}AF#uc&fx>4nM>Tt1ftf0jTImXU z`m-GbI9_N)ClPZz(K&m0TzgD7$Ftrpx4>0Ub1Ri4Se~*qTAW#hwyt};9|cv_l%*z_ zT+3U)px1l!Q>Q8qmt>hHjlEs6xb!#peEy zKt?PTW_@xZ6F2`;40%}fMP9+#O>%9c`7Vs=VU1hG>1o+ubUv;D?O!E67wtpG{p%Ew z4QRs%)o1Jr+5gedzl8fNE5ZUPE}^HL>0`U(*J)qgvkq5nIUaiq$b|=6493lqm4kGk zY?J%DDQbv=03cc#kcD zxuad>C_LzcYYXQ=A0xCIRo-8Pt?u=Gu?6Vn= zv27exV>~Et_osCRz<*&?I#rFw&7+e~hp7;gFw2A`56v*cnVJaeI|fjdpZOdCMN_6N@OT z%BKHpp~)bLn}0X)be2X(H9g(+)U)P(V!>$*ufta??;u08XEH^Zjl2qi2$G7Pu&1pw zo3jv1b~;UO;H=UJBUc|QIHcS;!8uOrhYqM7{tSwxxv96`k@%6u&nr$!lq9)y0>WH7 z@!{V(UyJQ#*v~p{P|Y1noWHQqMdoOCwWvW0by%dN`C_{b_O-a@S$HKT%BRnFeIUlb zT^dE8@cmQ&^|vgvTWU@JpZnx&-;Jp7Lu}=;?VQ~9-&tdW%f}qp7lDXJcVBuMPb_~UKh93RfaNqHV%g&W7Ug~h9t79+VG77Z&gWX5i}N6ucp2K`>n2QFX>Wm{kMSi6?RjO_3t z%&NT!4PTw}JO*c%F&yy-euYX<3s!8(BS}K5gK42 zJ)Ro@Gb$O(-T6wL*3@(1_Gk}E1z|tmD>uTf{l;W_GF0I@#ia;OSC$o+8!mmhB#(er z-fk>*2MIm*3?hpV+BL|7U1n-Y6?eL*85{e)wXbT(TVb9jiEE-ZtqN64+ufdM%E_@{ zZX$5q^9Z1iq848toHNg(JW{>F1L(z#Eh_munYnVv){QJfO_6TyVp=YZ>NX!VE6}0D z>!zukaYyYAUa)?z;Se7;d48X}kwj#ah9Uw}fMObpgN4z9qVum)V1;_WrSr%MsYRAv zH1d53!7w>2AbA<4)4BRb$smhlCR5Ol+#8=sZv<>ru=)P;nVE}u#7ag~wVT3|kliH)*NqwM@1`KH3v!B%IVpNd57M2Ua8}k)fOpChe!V2lu^Xaaba4HAj%H=`SGoY zptt?vfQF1)Q)p0QU{IRwz&p$=R)Z~oz)BlIkZ^!ef{f@aLzoJ;N%kYP5rT)Y1|_r7 zCcp(inRj+D}C!!{XUwWp!!)C z+rj+1p)Khu_s-Nt$#c7*CFrprZZ~hVK?3N?%{4kr#+sbd;Vrvc(20fhP!cN_Y(v=JsB4H@xsD82alsiUmjxH`t29xPf z3(q!XLb9j`6<+}vg-P==#rIfL?%nR;?C4TBnTYs*2J?YS=07QX! zM=g$VaiPd7)OCQl6Y^)_vTA=-lp8~@99~r~Z&-YZV}5@=Oy#T4+?T4K)f6zWVTOu~ zH2@}o?+8W9&}s1qbOljdvw1>d^rwE`I%KzK3hPd2o{H*K<7@#_^ytDK2a zw??bDWfKePAz$1cSA#B3lxvdtxwWMAU^4$mU0DpMP?cn`i1aC>HMvmjy9`X;DnNc6Ig86sJP`BV0~6q65G19cZQ%5i8^@1HW z@RzA$pR&%(>BW|}2CG=CPCDFk>}AvWwO`B~nT6x`&Y90|h|b!m^1T9EkOlu#m`k1CHt z`zJh#5btK?4?ENwPv+|h}1>Hc=8O>m;sQtTZV{9^906R~m4 zvBZ=Mf;tPUuwiu0pqYWPfokZYa+)O7I`Z=3Vq?a2(B zLCBuMH<>>U(&G!njRd9Bgr(O>PmMEF9bth6n=|6xexlo-zki4-$>|bVHHTh$L_|gG zuOF3GBoNYW6~?y3mugXQbd?3=poQ6w0E>LhcF!aT5kah8i&_QupZY+-E zA-OAO!$C9SkC~~>MhIee+c+aflQfu^{0RDEE~M16$9(Y3;OXR+1@GwfmjoM5C|9zf zN>U-?S5FR5Iq{*OIvX{EAQ1sw!jP;w9b*17Emp_hGH6R?8W~8+!VNSZ=i}xHDbN_w zmIux*HI(^l#r)4tr|M$5pRpqK)KmLwT3Np$wPOidSyRg_&rfSumB|DWj#z2}?;6FL zDtHXP0$2Z4{%`)y zL<|rb^FIkZpAS6zm(~OBE&;xL-1g|K2GV?taZ(Eu`$#ilX#v80FRMLq0N@RIdNO?4r;2K)Vm?BLPqb zADB~UsG<)|B0ALf4|`Uyq53}}?IKdBi+^^fkU^>ZD^JLvSX0OG5s^Ry{RtE!!_kyj zD4mQ+O`#~E$qiCEUova4LXZ;Q^%kL|KJiawHO&2TyZ3NYM}~j(*S`BcmK~9JXe-1r2N4Jp;IOb#2Z3Wch%t5znD`x4RdipzxRs`Stc@F-T zUoIfu7>_C&*7lF7*XmVQ&mYo4YRqhqK_*SW=^!48o(;oU3*uXW($w;@#<2f-_!HOZ zLUS@--#Hn!QZbEz!b#=2s%|El;VvzX={kE`9XKNig7it%gWLI z5rJLo;B}1r-Zn3Mr-m5L=hN+?D z1wZ_0p<;_FM&~+t{=kb)ir(p3M1M|U7uYQDS}5=9leRy~R}g9vMn&!@X%>g5qSf&7X*rU!0pN!0+N8l{N+KPAb3Du1{T zuJ>|CktLo-O?lr$UZG2WlSBE7iX!KmMU;5^H1cs3x+ZEZp8dbH@4Ns1RcLl9DE3rF zXjo{FINIBqzQaKxp7kR%KI{{TEO6RALy(eD)~u$KOdIxVtxJ_N=_T5m*Zqy*$X--i zMe0;phkCM!e2a-ZL2Bj^N1^Qsr?PKj zn$ttiL)6n8hg=m=xBPyW^(fzVkuJwC!8Lf$!-K&Jx1&K1$eY&(w;6ouT4BXI7aeX- z;YN{V$DVGoY)xuCe%3rNTb{xo0Jq%Y(ClL=Nl`t0bQ z6K%78=jqcsivBYH@4A<2RC8z)CIm*#j4=)+&vDK;1KwW^-_({?Fcaj-!HX1dE_RC` z_e&NnOH?xK_9yhU0K4F0X@)e3%}twy@5_vinY}+OYbkWC`j2Vr&$fN`vDGkL9=fu; z*eJY-Kvc2R7`xfqncL9#FqL!pvR8Soh_nyr48UOChh0Sl%*R7m6p-DvZbP(q^1^o` zyCl*l1u{+({Ai}5i)JL=ROIO6>B$L@0c?C`2Cdk}%*4+{z{-A5FbI;cc>EL)OTc=7xC0Ln_N2sAC)0N`S z*1{7vKXw*`eNhMvW_TRM@@L)8i~c`cU1eBXP1B}8aCa&0?rz21-HN-r6WrY$in}|- z-Mv_$6f5o&hmYp@^}WB6Ycjjplbo|NbMMSOIh`%vu8`DFd~6F+j&Chcz0piaw%|6RX7a;>bM3>;8DLrnGVy5Pap%?WomqQNtF935O60woDbk8;bRLDcX8uGv;j4>ng=6<0j#ql!_yDfQ1!lT0jNH z<`f#TzHc!h;Q{p>le^JfkZ4$Lcr?exs&!%PrmzP#$pTHEhYL(4qm!~8dX@=Vq0Zy5 zNVw9rjMj3KzdH6p73*%O{%Z0;(Xl@7N@EJ!aZVBqNn(NK31PzH8vll`ICc3oLgd7G zoa#(nI`<)cAl{uTAlXgR7Ms~Nm%TiGxblre z`~|TcFE?4V2(N!$NlJs9>fYMN_UNb5CQNNX&b(tG4`JouCr0PADJQf3&yzxkLAt{(NFG|FYV?052LA5n_!m_ z#+Ups8H}o}CWdvq3XJ2CEi!J`;B2uGvM-c~lk=Qkx7NM&eu)_AV$ihlaiZtyD6V3{ zPvw&ObY|_tBK*K(Hh|R?Yp)jE58p?sKn)BslL*>Jg5}Z_#L}s3{e+4E6qu8eapXPj z)7ZgCuo72DY!1GD7Dr;IUtyApIQ&_^ZjPbbdUeXJuGY;jVkHSan9@|6o;A)esC$qw z)GNR$c=vb%1y=+$&s*GjQR-H>ojS-~yocVKh64~R;z1SJ|ftK691Iyc?2qV8o zvgPRPG1RG3UCbsPk5-ia~vcS|yo=sNU4o!xJ#vn_afXV%4%>n(=O~6q*O#o*U%esfE zGOZ79=W><+gNCLY41{*%M^&v2#}b4u=-4B5sU$7OKs?rJ)rX%X*%wKjrz+Xhz>6%* zoqClALy>0lO54e!(-meYxNe!#p&|#587a42yGeDTLG7z1_H6$A5Tpu8A+_Cx26PO7 z*5hwesV&1&kh5XL1vo$KSEy#6C^~r=6ct>ozwiM9E#na+fvBqEriecXGfz@cF!Dk~ z%AXti>UBTkX#gf;JZ?v5f&z*84$Ql`uT~Z z>s*u?kvh6Sh^MPPn}Y!oS&y*pAeDu`YAivBitg^*dqXL-Cuq@B8^SYMdCt?pS-|&2 zZ%tNy_X$N_1PZxreeD>$6%cVSjwLYQfP1Sijq_u98=wNj^xa*@u#<1P=&xkGK3v^C z7h6SZCaYOeg)3mv*a~lyVIuszpI~V85yx0l%)g&Li;-l9p$GQuMuddV&M;A%yOu$> zaI7c%!5)ZnjY=LKeIQ$38bE>|psiFv6e%Sbe6a!h1^nqeix5r#RrM`yKLl&o#1df- z$vrAbVtsEC6<1i4H7@0amn<)Jnj}Vl8~3QqzE>yI{X#!PeHp#K0j$` z+$tRG#K^31P3-eLbl4Mlvpkac+sLu9X>vpAX@Z|KG*yg$r?=Vm7M;Vm?|jf#BG#-O z^jv@OSYVbvV91mx)P%3P_XI(w_k9Whuebwqrl3Ol@^%ux(o^qx7@-*Ra%V0FU1X`O ze9`5Z^PVb?O|wU0oSFKW$Gi87j-z-yGn!=`IHB6mplL@k;X_B`XBUyf)wjuEfqVYZ zk=~Mw%c0+CnIE^yd>(^dxB9lsyGCGRK1J~(6@&f4DeC*%k-n%=*Zl+c(-G0Xcw|w1 zssZu?>DSl&pLj%;74jbB^^0*pHi068M`1_^kpKQB4jGU6FR+N$g(Lw<8Vw*@Kt8^e z4J0AR>yNaDbpKan@QQ18%GKX*4Zm-~V z$3@THu@8XsRgSy)KhM0oU+$C;vi>qKQ>@ri zf?8+M^SrdE$=kcX=!nV3uME8| z#I{^J?o$F@d-Jt8={2mRj!#KZrs}_cRalyh2VJWqerqO*&r!cv+&}&TW+(xs5(lG} zCWs=Ym;+5C`{_cu09%4~uM-2#j#T?ES%9`%&Q0;t+%5EEFcHuw12t3SpoV!=hHx zzp~+Z>K0Xxl@>s+UrJn;+*DI`i^@P^T6_sLW`$UZ$fV`puGI5mQi0W9)am!YBdaxS z9cYfaRYZXXCL0JIb)v+>+$=NN*ddFd_d;Os;8Bnk6y|~^;FyV`hQp_SG*z#xsisu- z0Q6ObD^FC;dxEgFQ&2wvc>X>Wit6t$52UEU;y8WW#^5_qwsR$bb8wv9`QQ7gU4K;az!Z( zM8-i*jRiVx8m1ot;ibo0IFfY)d)OVGs;~qu1f3;c{q*j}sS;Fj-{Cun zYWZ67^mZbRbC~XmPF+6+^h3B^IX9`|2xmJ z>P4UGd^u;4-je?uv<_d~MW(~d_b9FdlCG~)xO&Y`~lg?jat;#g349i-LS+F&)T5%|!-BTkv?)X!D#{NK_QH#Ux17qabak04sWM z;-u!MB$o`zt|KvDD{ngx9x|G?GptRNo3?B8p##N&GOh}F#A)UCe(A(w_B7v?hA*MY$Pj=9br%XcZw0tZO`gB~iuqa6_@~hsF+~PEcMx3f#%DVlsxXTs$hpYx?3ahCaN-d)a34(fcPDN1$ ziAIKW9MS3}cc@)h$`4Azf%e}MX(w7=(a5oHw5V(hhFh3cnf#z+lzQAtIyD>2o4+>j z#FnR_%J_Y&ULGs1QKXNHm$uqQ#J1gjJhcGIi7w~E;5Lv|YK=b?#9Rx84gcV@3wy(v z8W`$;A1^EUyHqj#oo4t;K0cm(~iDSh6sEP8)~5`+MnwsNj490?iDUS(<^ zri{&Gs>4tHAGFO0)*VS>66wZOH&aQd{gw;}nS04V208f_+848GKO1psLsdRABWe$+ zU$*tr=Tq)O5XdHIVTr8rotY}~#7olokV!FSVpyzi1Qr-!WzNotHY8zV9N6G4>E|-a z4hQR$`o@%u88S3%oo`yq`8g9jWIAZT;S5+t5i0ZYl41NAa<2O$`epRSAp`li35?JNC|W4Si5yp8*!nnFY~Nws8Y%g$@{SFX zZsr%*4X%K41i}yJjBuQ`b(x>^Ba`(Ps0ZPjwIGnU(kT^i)Sk@{EHjRg67g$+^hdRY zy90jb3;Gpwbg!JxO}B?o=-LEwO_rUmRrAn`q&4>Kc_K2_xKdJlDY&cdiBN%`icAk` zR|SzyKO2AU22F7xl~)EZJ|1li+8$*XsRrvaIP_5*`$4R2drx^Xdo=u==ac42yfr|e66Z-IWKK(kW`f4evk`d0U zU%7DuqL!Amf%WTWJ$-&X>QWEQU724nn4w$et1kQV)yEXypl^&P71X{M0jXWJcZ1%N z)T1NN5h%>v84W0!;no!?g^{QF2EZ*%+Z)|?ywmONWBEuumdL6yU;alPf5kY^w>h^1!+v>@dbm%?MU7WVwFo8V9rj+c;uy&hE&k(IpNAdcTx_?NImh zUtq3p-(Oo^s;bZa&|V!(2?CfIA*(_iB!qVVwBPo9Zn_pmf?HjaCrko}A`$y^OiQ*+ z4(HKXkUBTa>COmfs`%XGO^oEJ&Tx2^wtuRD}G z-$02)ITCB?L}_N;GmXf8xT+HSslN)v(eV`s~l2u3v9} zf3BX^gO_O22Rz2c`2Y9!w&h4jMUWdu83*b3j}5aeBOem>KM=SOk`2U1U|1<@y)@ru>uuPXaPoG0TxrPoMqSK+fhWA zc{k(p?5bT=55D-i%!1j6@BYXTDv^CSt2>4pQkM zx$yGuh}wn|!^r5yy1!qAc1tHT#%z6}HQ)OP5-!YoNqa^8WA83Qdi-y7(TT3P9)*!7 z{j^-;JhWnQUpWgasvWQD`_DV$8~{Qm1oZn2)qJ+lD6Rv`5fasx`%D{W?!VlN-bsN@ zqX{@9X6z!C;UX+pVmqIzMR(QYlzmX5T;yKV$X8g<5URp%r!zl4lzfhYKw>q)>7H=; zq)#2x8?Jv$FPh+ZU!UT}zsbtdeE zH`{V^oJ@LT&2uc2NM=hZ4lb+8LB%HC+{g^tDFpJU-!#wlQ_-*nihiK{v76! z4EbH>H@}m1?9{Ja1)D>E3XuH+3`)#`AMIoLs&&o`SqC`A(Ap}Z$gA8j@p@MqeU5vr zLcgygc(9`RGbND!RZvj(g~(?1Pdav!-s)%Nsa&B^r{3DIY=L-w&%=+5sRO-j$Bke2 zgOpc0hc&@Q#1iFy{AP$UJ1G3*o>!n&nz3??x=;s!17qvZDTW# z^MFzE~A%s`^{JDuR@Wj5tunyd)-ohwS{)HM`VoTUIO9=V+1ZwpPSP9+3t8? z_rFA4hS4!}YdhrS|Hv-8yRYA_JS{DdIFAJM@soIJm5G?!WT1hBx%oOHz<6qYZFO&-Xam} zDbNH0%eNl_kmEk6)LZbf+{S6n?rMLE}mo*I1|CJZhidHlbdv^lrqyVTs{sKU3 z!)eqSup9OHel+0V&T4UI_zfV)orQDV2Q9gnO8YtOJWW=A5LnXqLGUw_|0q_+Z-6?~ zZHZW|y_l~jE;1A@leOoWR2+5G0zO9%cmB*DC*HYC5xaN*?Ods5)IiBYp)>vt*JKy( z&>r_!5UoVc2>^s*Jy4Ep=mKsq^`;}NUcGJoKJ-+7&}z%1^C+wd96EqhUcx(gUEQ)D*6+oLB7Sx^)?Idj#*r-G@gM?nP`KA6oX{ zr#Ilaem}$0whJ^fsgn35p~nIy*kxuk03|(PF8wwxobQJBrOfTwB@XBk6y8fMM^KKe zZzmE!_mIr6FMM+o>)kEOe3~aC8ogN$`_(Dlko9X%>rV9t&)G=IVLw)cnFNHHe?@dm zFwWN2(L`z?c&n{1UcW%*qohvwmzV4tY6z)2bMQ;mX?rX{{cUS~FcQz)jz8MCrVCCB zs~=Rev3f=rm{*%_gHPFo@Cze@nLL2WP zj2Y^I96}3sbB?ZlLfb<9-9~&F%vU^6JzAt2->Bu2te2dmYP8IxCHva2YPlzV7HK98 zX_}52(w5Rd3HSt1vwuknLtBu1P>H=n?nLSqE49R}|DX=6=B>eZlZ!)=8Dk`RMH;D` zFHBKUK}w@|p=mm)he;7{G{ML1dq7%7E46F)ADlAh+aEQeHb!%Wj+dO=736Xej=W__ zb(jjhq2FMbtXLcsD1Kx1t$qp843%j^9+zh=d)w~@=RV2?9y4GjN8F45W?@!E^zYO9 z^z&f!jpds;PZ{Mnh2_^KI8R09r5V^O1??@KP|LPYH1xdt3WklI!4s8yLF0w6sY)Jz zWN}Q|25WV!O-TsiWOILl0H+ymwk)Ia$BPr<30==#1V47hyHjdgn4rx8KEM zyB}$Did4V&09S5tML%I(sjZhP1&H&9R<I)prm;9_#?juM4MfIM8WFq1fvs53dsoN|39-qXL#Sjy zU5qfSM=SKI`Jg<5#WPDTYJbMUmO_OVGYJk)&nP|ehx5M*3}=5$MwTl1veX9*l_`l( zK4hH`9|(kQFO#sT0)mBvM*_{dISvS$Xgx#(CEmT$DpCOkr6|5(`#d%=!nT z7+9h`p@L`gaRin0I;+!NT)^@pH~ALsjh^o}5rfT5G+)m1@~10=_3?h8;L)kYg)L~s zg9^Je)7AlKSo_FjFmH`r)%!gStjWBx?wo5xD2UvFUlRMS1UKwF{+;aZ8-1R;voD|7 z8XqTcqX+2HLTvATPfkDIdEXuF^0CT0_Y{R@W) zJ+r@urjCG)PcsRux-2WPHgA`fG9%;pAw+lk#6_l!cd`5dzq!x~>>_ae9nGbml@-S> zYAfEC!;A*^!A``bC8e{A1im&b5!howGi*G4!F}Uxx5yM3LSdyan^VDF=wStyfFNFLuemF-fc!iZG_JLj6nfr{kY48)UMZOhe; z@G5OSb2|4jf(#NkXNvKi&0d|gx-fM)_6XXddlY2+U@lmlNbPV&C&-QpWusi7k28Y^ zqr5KY1hwiMZ;4YSLiM3V zpJ`HL`4y-6_sLz)yCn~j4j7D|%pyFb30sRkq6u4#e!S~x>M$C|QIb1avW3-eg+r76 zI%Ab{6w0Na-SVqC)S(-jn;a9jX@mPNNXpsm%l0O~A|8e@j_KXH*HMl2%nJ^?rz1$9 z;^IjYdUq^S7^C1zbJ6_g9P|=lLud-m`BIvq`v^F=aN5PzzaukKCBVKo*-@&66ppdX zq2E=u=CkfmcIUsaH2+$3bcG}cx%l?uPGZx)dhlMjrg5M|d8kl06A(nA zLj01y1V1a+eMzuH2M0XTfM*Hv{4g!NY)vA3=4&S#pGLpFPu(eFL!&>ZE)35XCZQRu zOoiHHGAp66j!c;_&jI$qS!u)}?!VSZ7kPde+;6EB-?N~s`ziqTN z0f6>zP&!67fD@=8`|n_>=Yxof7pqlR1zD!YY?lGA;ON`*x!J~`61kn-EwdPJEdIyA zQbH1e&n~1@Jv_k!p8p=#uPG&DRNJ4GC)i5M8C{N~+N`S7bX41t=KB_#zVDXe8tk^BmnI0;Z< zw2+p`7%5rbnQ4V%Ccd8dS1>`Sv2!Wu3Pj@BG0@-1?^^?pLsj-F8GJSme@u^4`IVi} z#3H%(x>-k?bN@CxazHzi?@=UGU4Am}`ti3=eN;`d6gWum&}vZ|QqFE?sf!sjML@9nukoE1ib#BZztTr!yS`eTnK*Xj_*;bNj?n-b zkq~tW#a5*xU&pYSJg1bUGs;>L5#1&sR>Tb>?4Xm-W9zpR_>N^!i@!B~Nz13P+SAeK z@ufg2LbGP-n0c>$j-n*##1ZjK%8aovBN==Mp5%sv-gD)?ozTSJeOpPLjfxPj0$%JR zc;VxZu+s{@F*uyWT8-7`bHS2Z6zb8JDD@V5-m5L=PVSf0`9wbnt6$$-81KzRFSJ|o zHoU8U_*{2Y{_POBzP(-XTdCeG_r@*|X^a6@^9Ro>?xxPd%>JVFbtm<`mLrHcl66Co z4UI@FiZX$)`q%6Ks8meqQ5aWG~szfZx zq~a$_)!()Ux4#VEV!FsrC7jq0<^{qvApIOknhBv{5>A-;W!fif_qrX=nSuNbX9fY7 zg;?;6a}sy$C5B&!C8>K2v95#*ofgq$<#(@VJnFE-rKoVb?}UOwLHO=07?WVJt?=&h z_cF$)!cvWWbadz^m)qe3b)Q5K{8=OPe&|qb*S%`jpx5Z17g#@lT}3|Oh$q_YHM>!` zU-U$+&8q(h*Z%2U;bdJ-gQxf4f|VSd;8)-FtZA(1s@Zw_`*YBda%;USSLBC%T=-u& z0@JM^h3|JDYlM=LD@Q2db^XfR;YIf=$A8BYP+wQ_NKj{l735H8^PDS8b)ojn02a8(|e>q4I+nNo^Hh=Vl2&L0wReZ!Te1Xe)5^_zTBB=?M|1iV{(Keo zt3|r3AQ>A4ImMIs_!${#7qXc9nV3$m%51G)VXfOhoq88}s#@hrSDcsFsx2y493jxJ zH~jkf@AaK}MuMX-rFPYFY=j}#{^m%TJnb6o-p<(82!s+zrX!2yQ#G4*<&Ze_D)OUn z%N7_ru5s2+`Xy%4ST2dwgxB18v-J$fbbLBi$i$Br6tH=5w#k5j{ z%MzTQQfTjBrx?Q;`FsL1JE0bm&FH)fEJHK)!#6##$nqyrj8uCsQU96!e5PRo*Uk!~ zIm}!%y1|XE>tX-tn&F!@6PW4NZ^|D?W8Dx_)daE$+V}p@(z}mn+bq z#6Lrb2VPSu6uNS$#l)RZq$8pa5N`q&8fD}eN&gn99g7I?SV*^*N>3~yBNkn^3kZ

&V<%F$=TaL;0_1{XbH}j6I3csQ*@onz#LEPbdANO z(h(syx^{uDr(hzIktcWs^5JwL*P!Z(@d6M%}xGauBty>d?*eHvSwGckj5ivnTe_}RT9W*wK^!d0AD{KsvvH1QC;Eh|hE1Iz=LDFu>5%4mKj*8Grz_0aByl5t2mrRjJrV*?N7fvNuq1c2i zSZ=lG%j~s|b22HY_dn<*RizrX5ieB$Q%S7YIC>5?!Qd4=0W$K0Hvc3D`RO;mh3S`~ z@4s1}@I8J-E}VddZ7_e1XFsUeiGC}f(yP3={f?ToS-5-!!R`!yZ0xUrSVi(qON5Gx z*!EA&57L7X_h5kh0S)WKY`;=_g#Br(C(=mka(8urTD@N4B6@-*{A_6`uyr=O#>j55 zMXzgxeXe@N85n@Y%z*D(^+x?WJ#!{naG}K>Sf{_JJ8ihsu_&`l$hUCx78p-(mixxC z4=|J^X0;einl6@cijHJkr%3Gk3Wp6~-1QtUC+1(a;qEK^{SCXq&^`-%Vel<9O5Cu< zvVXCjv=bpVry6nQSP7n{YbH1rFikyHl*yVH8t4nxOUritTtej2CNg_WE@vL; z=t8#V8`q6%H+!%O-^T@WcG}+70nSX8;fi5yi&1oqjkyg}J{pa{cs3b7s?Z)EPq&jx z{2ew4cr>mf0b}l4O|#^E2+WCUxc8v_q5)OK#<86$4dsZ4V%8iW)SJf;SWws2U_Z z5bD3?1N|XT(O4focAG*r)PMP0_IXgfpy5o_P(MK{L~MX61c4z9T~JA&;o^f(YasSn z;zcMikUMX_3e^I-K!V>;-$CECu?scuZ&Z5zIn>3!*MtkGf3+WN2NzJ@pm~jNq2T{r zLyH4+{69hZ$NcDR=m6+-(64xb0{veHl}dEzoqyMn9!CoO(GX*a&*1}B0o(5G9oV+T z=kFo+vdL{Gz{9o-cBN*`87rz0K^9F4#tD4$p;@EJA$B?=4*n8VeEtwgCBXc%xvH|K zkN($8Rbx$)>!P{(n%?iMX~K+QhExiMD$MLxe?uf)V>ZfmC3Gb8@wJS#O6tbH&>Y#{ z?ZVXQYzLgNu7K3acqy&mxgHwQtSU4X(qcdGT=&}5MM813UBvH_4n(OrZ!);p%>f*U zj7PjSH-dB@N3=(A*UI_sLXQ>B8_d{HzG;hh?();43j`{ElY~6O{jyULmmw0T!A7Q( z6`pms+&1mF{6{c^y<;-D6-bx)(~7ydvLKI#v@m_LRe(V%*)Y{1duj)5E0GM0&r4kt z=ri`eisKYSvrQ~nfAcfoLfWLnq=IGR!3I$)i|9HuUz4U@d09RP>4YTeBX5m`Kd=K` zr!GoH)Ns$f3$rKA<9QB{T_FC^chW=z|^7cnhbHLij=UxphCdZ zatA5~eg|Uxq@$>T&u5X^{zK5<%T(wo^OL|t>HOU?|DMDE#^XWJ2Z1ouF%*6oh111g zPqYjO|4q7qVBIXXHax`M=ND4wO~xtnIN}f7w6r{nsAaWr@<1T6zUegY=ovV?w~>kM zn=07Yc%5U#eENlf0Ucp>rM{=id{8v&Bd~VBb)A?BG%4{88VfV zROWca`J|)l4qW8~#Qhu~<1p=do@D5Dmb2Yc)l;o00E0pqjvkMHZ9wdZ$#@1UW~MH( zHKE9rov?I`Sy4Vvv@a2vIHMIpJ>zflWWQYtSWDpTpZK>Tav2=+YwLsLZ zoTX&#^%7TjH4`4@ad+R7{L@=h@9E1!`uk<+NpgvU?$%_mLVAA7zF?Mc(&lm&>|3Z> z>(f{D;I0-m_k#*kCnLZ8f%X02U$YxHVVBBk_z^d@m!&fkKT;F$Z2N~U8ImK{dU7T- z+a@eCdf;zXAVeL2e_kq+d0D!1n~@bgSdZpKx&=0+%Y`6@Jv)<=(lh_=94X*!)!J~k zu*_u6b9@p7a_X~$1*9_!d^LfOuqz4iuamBbc{%4?qDC$P22b&Yo^wgNG4L3lmk+H$ zA{CVICbn)SP>cGSEpF^&ti)aSCu>i}hO%-)D)e^D$Icr#`quv9`K+IZAnAY?p)j?_ zN`G&-`{TL(FgQwA+jH!Q#-4!fh-K4o=LgHTw?;%(djeIF{hYaWH#rDQzaCUKhdpK1 zlKW(-#oUr3;3-Dzu3glGsQIUW7D$zM`6yWdtkm#=!ooPs0k?p{L|z3xsRD#LWv-7mS_S;IcAGoR5SV6G`py{;@cX*qx>Y?0#WbyU_RN;Dtr}8zNcS3D*9Th0Iy(=f*6mBMH%ZX76mIDFxE48^G^ z`Dr@-6A3@*yCJc8olTq+Ps6ZH3ARJdErb<`?iDr6B=x`7Xvoa60h||%Z@>FQpPTKb z_up55#x-6Mdcof}Bx?--UmGl|kTp;1AUB-YZ^>5+AjS;pz2*{cNLL3#j5OhC7WofX zwP9edwh#-uoiZ?RC`Y(7L@hY=BJl*`t?AfmuFgm+yIoy+>$DdB2R$Q)tb?#fbivRZ?x-A9%3Ziub=s&y!LcLPV>Rg53y z+@s&3ec$S0XN8}Q+8=q+mz2 z)IDuhDm(@S+4cKZ6Cof0mmgiN=_E#bG3zvQ8t>v~Obh7&%xD_wG)v$#jqGag$ZL#b zGio>HyeN;BA_lIzKbe#8OAu6`db53V#UwOxOPEIT=zC@4@M(Nrk}W;08i!vIa`FLU z_euP1;miVk$l|w4$J{>?afXMi2mt>aGkEWEvM=waqitSJUG9%iHG!Rdy)~YcLn7oA z-*eV+Jn9`g!{HqCVyoGSxJ^jc8_megt1hbIqle4t?(rAyFZ@Bw{tFI_jHw^?gyDZt z{##vWZlI0Bjuh5wPj4X}4VtTE5DEFwRJg{hIU$3*d&yahyCjJ*0%H)>wz0nZ!bg83 zKZjJi`u^M*0UYlVeaTNIqRSPPx_<V!6$dWW07ApmXuC^Q|6%!|z*{aLRe^1D35ZhBxu z;{VgWStGzhxq<{h1ZqCjRbE`G&hf945nxt&PZVKy{_%2+p z^0(d)mi!B$t^KYnZ*=}!c==KIyXsV1C6#YOkvQwS^0&!~n)BY0Bb{XJ%LI z-Ur?tWQ^!6PTG-UQ>Ph;Tp~$(lrhIqa+SGHRZf^MkE5Kv3zcqr61VPkzKS@gvUh#J zyI99T-A%BBdMQgG{^aWowN2Xj_>Hq#$s95$2%~rS(WgImHW2d{(6_sTo5|{Lhbx3f zp>bp+goxHp_^a&l<|ACY(Ri|!FS@_cSJ~OkB!37f0toKesFvVY>PP zF#0?>*FIH6WaSUf?CobKu2$~U1H5)Q5r~YazNExe`JHPg`gv8=rHZEXwyG3|vAA3n zeQX}PC=#FJp?)pSAN)DO0DY*%-S$KohwN$?Nvz~xm6&0&s^*J-lt0Url3}GgF&am> zP%YC{^IorsN2T=dxz&3c#9~ciN_~}76+(5yJFubHH5P;tA80kW>b>4s60k##xDpH%)M_LPxcHui@Tb#@gXs)X^*fLD~ti_vCwO zlRMkl4jul6VL~iX%%8Z!1b{ncdURY4tg=P`)!DKhui7t!$k$+>nx>}2NK}7>{aUVz z9M2$q{$kLRYGiXBmc=Z2_xZ`@PbtY340Iptn%lt`rQ(Uk$MGPD9 zzwi=foBnyuns>cFb*65*yLsj(zd9z21ChUmsh0qI*$nx19ZyJDqjq-ch8ZXAYGb~% zlm5zmp0uv&s9o>+$_ik}#|zRIo?7Tc-h|bFhBhY!Irf$B5V3=&S4_$t#r&bl9uBg{ zSP19#?qL0VfopsOIlgkyF42~21qkOxoG7~J3D}guq>aGc0 zA?sA!vGq6XM^8LPJc`-bc1C8-GS6#~Po_ymSp#%IJ?DD|*?ynnrrK5cwZDPgN`hYs zUiKL5_32y!bRsaI&^SjYJxRuM^iSmelx8}Fl0*(zM35>tHFc84aSvzYE25R5xZuZu zHEI|gFt9}*-b4Y55*WkCh}C0RMrQkPM5lDKhHjEcsW`nU{9T5X9!(`Ig>#9!UFfHr zpyq2rO-6|>Uf3dpCJP~ZE3_bw1D|%jMnNckUcHU7ByHjbt0*iPvV2$6cBszNEyYIb zQ23hbv4@`-@#T!4XI^XN{BOrLZZzrRu;`1X^wPF1a#a>^#yz{$XQZ?>i7L-(0yF<$ zmiQ}O3I5G!UB0--3;$-#wQe%~81g`_8SY`2ltCm=;ipv0&j5QbnHY6yEL#6j=r(nv zlT=pQJW8d^Jz80lNj17;>HUiRsQywnC_KottXpCM7QH=e_DE=ujvMSqqR8O{DkOOFdxtZXLW^A*;U(9mwJi?;t=<_Pse;OK!4EV^vE}?k z%Nkb3upOVCju@hUeq8vee&m7QWUK09){4~y=h-CCstLDU?%tdy#P{r^nPh-oy;t+# zD5dTuOUCk@li5|_moH$vZZT}E0S(q=-ABvqxY?uYe95YaPBD6Nmh%Z6m2)hT@}|^2 zPxU!d^w%3BA5mo9qoXIxw?MX$AH(?}?}*f!2~CJnxUDmlrg>yFdv&QII_}RNBIGLBX%w+S8OKUCQBy%Dq z7I+vTn)DkBOWduGLxz+{hGFm1<6KN17W1bjU{J3u>_@_}#%G6ARHZljSF!Lm`|^Ql z-tq$`hZQ4JFCadwcIrFFIrrLO*V#Rf?s09M{NnV)qlBW)qf$kMD}*zQyf+ zZCV`Tb;DlzM$(_EO2a1WG2biBMVvzH;(faxNM45HIOdq~n-x${&DV&5oK@wlDZSdf zz+a)X_PxQS{5hBp2ZAEtC$!FJguxB}8 zIl~&aQNea$y_D8Gv&1en;?Pl^qo+mts5PwAQZQyqQ(Q3?6Mk5qfie3lZI?x$MnBCbdPY~ZXC7^pa67y2Buo}9_J<`@mAgn%S640>Eams5LEwVe!*NH zOz2(fujS&|u9L03{-hD4!~v7nMo3`ug>YZ! zALwD`(WL1B2L{G%_&m-4DAB~@n|EVxj~_dX*Bc>2n>`efMxcNRnj> zV-H#;oG*+3=p*T1n6IG5s1?aD|ACm{889CIbkfRUSb^ityAo*Kvzo+?u1d}|)L*!? zt!G__R!!RWGb3;xm1MDCxv=n}$=$=>{2Jki&8&@@aC=}#m34d4AFnZm%Dg{o*m=}U zTDvTBifU##QE!yK3)d}1&sMm1zTFTWcqOL)@Bh z+&V4E+ym)8n}t%hqtdPj76Bm2v?XGvY>mF(EMbvy{oswaNqI${WB5(WnEKUI|E^xj z=Fq1*B-^=sp!Pk4uY6`q{Q47~z9?(+I7OaaqUE0?Gic_NY1a8z+3io7Yt!$wZumKI z1_<7`3hnwduXc$~jX~Mdcu$ifuRKpY55Mkmk!FF7N8h5$i?L%ERiH7ah-kcgeP7O; zuD}TtkiI25k>Ya51(bxC8Kz#R%>UfWWF;(D3tHtT^~K;#hXG$z?}8w{DhO`~W`g*j zZU{R2)Q=iI%-ExM5@P}QR0Y5xE**=-s!dpuQL#i=>7253xAna^aRYF$ix%@iYNx(# z2txt6!!XJHZEd;pYbT7*RZ5B0k&;l0q$bP-kp7RWbBeC4i?(%ayW&)ARm_TQ+eXFC zj%_Cu+qP}nwr!mJbzbhd`*E}}=U#2Stl4Jo*V_4$GQ!H21zA0)`;K$qs3{TysmkkHD2#NT{ZOi6 zfh8I5peWESs;hP5^&2jEMY;#cKHo6jyC6IPv_F4Ii$QGc<;iNT@y|Mo2VXn(!Lb>v zA~wqq#MrJ9MG3ImUI$vYA-p=RHOsBfG5NymTW99QPNwo22|)5168W@Q9|~rWv&njZ z9hOqju}EL4UU=1!vXL#I9-)?yGl+q&&_{io>aEwNYvPUeK_%I#6Dm(4nFO$Q4*yaH zsF)m5m*!bsfoLJb@eQV2(2Kb(l{*?9{l?3#{%cPauDldArhJRc`ec2C626x-O&`a# zk+`a)|4ZVMrm9IA(#8t6vY`jl$)l)DxErzP=h<+MZCPnYwCk>pKDI$LYU|vMXC;e0 z;-ud+?(I)d=rl!fTnFCx#$hFq>NSP|K(m7u0d1iw@u-ltw;#}e9s?=zrhDYWLs&{C z68u(`?Wiv8pCA_R;_lzbS%1e5qByrDjI{QZxCU4#^T(i}6p<{CYvciJbf~(#S|ogd zw?YN9f7QI5Q($cAvN^bP#H;WNfYg@+Y2Iv2BbP^uEOVj{;I)InH>127R$zMK0T9`{ zuj&jsiu3$C2P?|srMidtobpB`>*T(j!hY;Re$`>9+bFdW4%y)FFGYBmgy6Aciod3W z=%On3vuoKdoZ7@HYXr(_eT8r7YW1l%o~pLJHDF*GFuguiu21!@SD__^q7=wdVsoca zNTnqYJn`Y+lNEBpV|BOoZ8erA0ls`hHA@p?s@cm88QaKYfnD^$%3>9lBY2Y?`9g@H z7e5O*Ewpi$Sr-l)-B^1k*7mX)_~5LD^qY>Grh*V%??06?#l8vC} zpYV+vi|_bGAd+loE-sA-=$Z3AVlBMocU2GlYZqcrO*ghyW2BwJ)z#*NqYFa4_4en~ z`UBT?V@HdBvhn-0ImE?Uq|>Hvu2c)ONmql^{Lq)rwRHGM`$zDK+4Y>kYk|3w7jws0 zf}lt{z%AvX9gfiDMW}o40J~~BhcaHV+$_0n{bT8XEumvo!wm?@a50&n5xwqAu|VGN4YIgbaat{Owaba+h%jG?QI!{Imk#?;?n=x6QWeu=bU1O z{K1Cy2D0h?1DC)C5BGA>10m;fjc)WBX{;-Yp3K$OL3ZTk;H+v{1LoO{b+YIs)Js;i zJ&|~zCn#(hYWOB?5P$|H3%~GV44O1GVHFw3S6Ru-zCP9(N0%;-)<1a1isoh|xbOia z$(Ae{apd9I?rClGQN`%mQQWr8o@bqPi)3$gz%gu=^J}|W1Q{k$5BIu_XV2Nq+27+! zV{@Df@MB{~-*xBfsY-F*E*AU4V7~4!)E}fYcnB;lrufCQ8gO+K-(g?6fvB(f${{>z z8C=v8f`3Z&iOQOPw{zWcKF!7NiJE7yZ`ZVx_4MpAtcq6M5eXLm;+7=Y^4Fe6+Yum? zo0&z`@fs*UI@MXU8$tTz^|ZG&HT89KdGvI$x3~5A&#%``U{SFAEp#5B{@;^B@Ldj^> z82w6WPaqHnNgQVphr3B@*X7Ac%Zpkn&S$>8!p*wAwTYVZ1=rqWaYovp z)KL}H!su|??4`ZTN^&ok;#i^1!Tw?1w_&{|1-@95!(54aus4hS{9tHw`Id|94c4FM zIGCWb%Ck}>DC$CS&6KTTW!=uJH>;4|)3Q{TeJOk=pQnKNG4Qc3X3}e{=BroyM<(Dh zWpOyyWbB#)b;AAbID3=3n9o#Jx^B9^?hnr|tG}&W=Bx+^XE?tQ6V3eyyz<|VUjPOS z4M9f3nODf0Zu@&S788B&7E=i&$j*UiJX_Z*Ra`?%&;-1z4ObeE&xc7^m&@FOwMVd7_ZSbaIpS9C1YX(N^gLOUj$@ls*b4Nl%WeoJMV77vlQdK0ydFEG zFQL3M&UZciv&-9i!ft)%Sadi1*?`I3rK9q;kCKWE#VO`NC4k3*jSCm1?c34C+1Xsv zg;Xqo_4Qma=E9;hBkO#F(){upw4#p?YMx{k)+V^u_0%$P!$-spEuJjA6P_^2Qft4V zThpp(#+^))S0J)uXlq$cWqaJk{f2R&9NU98XklC2lBFptv(+7~aaiv)9zc}Ld`JzO$4Rxty2?@7*VF?2A-WLH=3SS_D=$DzGwiD@zH<@4`flLS) zBxFEq<(|nD|A?ON85elRQfF&xyMl^4%5iSxy@CRWWp`mK1eolr3F9a&(IWS0MM>qR z(g3A7lhl+kQcQPkVXKYeHsF)hecAF+wUR~cy2a6E{G~3>lqoKY15=Y5G`=rI&N}Ic zxSVK}M83D%BOAV5%*%9FYJ}UTM|-K&Fq(vTjJ1#iqD70mv6#(~HYb7mxt)F-%(fAU zl}XUINVvkn4ne}WByTez$nUN`2>s)z|^01i%W zGl7D*>3D}rb8?P`r?4~NSKMci;9xZRU^afL5mxA+hBIhN zamCiEbAL(-q4qRv#&>e^w`+d)b!G?sJr0S!fWl z>=$>op9iQ zu-U(|D-Q7%D0=|99;YRlW}++Q6o&}H?8?;d_W@xS-IP~=!6G%eNi4kg(;m*FHd}p% zyx9GFhy|qfMpC){6srC_=%>~Ru>)sjg!)jCYE(fUBo6ihvq%NGAYSJ{xG>~bBH*|j zzh*I^U26i|h71NDLhDy~27eid)U@jJm+kBu*J0>0!j8Mfpi)rm0UI#77;%$;7)2Yi zsiFbGwIJUO7^kh0YSrL$_t(-iSG>1Q4u=f`+W>k*ui6k7C!9`sw$iS@hSLp?dE{Ka_fDpaKe?MgAB4 zE#))iYvW71?B@U$T$kStLMk#+wd$TdG+@M1z@TU9nU6&F`j7j#VudcOh-}poCg1DA zXVEkG5#2MNCgiX>^^6g49!aXk_QHWWbqp!XUXG5F~S<;t=WA`*Q4vv4Jz!F zBuG^4&`y&z69$t);J5hZ;w40qH{hf4y=`XUs>;j97LN{Gt~&_~vF3dQd+W?P-b=nd z*?-B%BW9vU(~RTm?*^&mLR7NQBW0<%D{;m?5u>95{XpVNMI_mSpj);^0NXS&qUUn? z2gcIt#50@t7pcS=o8&sra=?#%?Nwf?XXKJMb`elhm@9-%C(4H(Y&wZj7y#zJP2!Ah z==4wvcI8?}47wjJ7!4CAad6~8vJg>Kdm{5hn~d$bK`kVmg3GF%x^l_Ss1lcWE*2=J zXetpm8H~nF8_8mq*Cy8yufEIN1{y92SLXI$!9gQ+zcJ`G1aAWxY;Md1tjwtFEFXv% z@>{$<*Vkd%9r2{IqDLr{od5?FD#U6J9MqiTJB|I<>qHE^O+3wQIvi$!1YaUWilX^6 zAu~fkfk-RxQ_6_DXRDnQ^RqQx(w_OUB|MMhZ%x;0p2J?fL8u9X^|i zokn{bl_fGGM~RfV)tIh6B{#nem!qSu=oRW&4;+Z=l7U$)k5@5 zlt(86Ii9u-GS#sze8UXqnVe5jc#n_TJq<*J_tFQ*8s$C*uUE`!kVVS+OTeYwa~};v z{ALu~IYLyo8XI(stMfZXz0sv$4{Pivx5EY9&cLH4znC7BRN zED*U|mjTR1GKk0^W42{*sqz@O5`gqs??AzG*-7PHfD1Uoyp51l19!3_Uy`pK%YvEs zQj)lC0jrGkctL9A$@pI(QRIh-AJAF{su?4+F?FZ69x=Ph;qE z466QtG4FW<+A#7vB@{P7B@5c;6g=w$$Dg2&q7$&qX*kcirAEh>0W5>5Yr>tYCh8f((3~ z%SHs7LqCZAmd??Z2ILzzf-xz=R(=t%jgz^HT7ylr2e(K}qYd-)M;piPo4X1(+43Y0 zvjiX=%=Lk7d#@D{l8pMDqo^Du9xFFwt~7#+1_=!AaDR<~4A)Z-MTXT152!;(RkNbPc8!zcHxjfGHb{mASq8&YUxj9Uj|Wm}n1Y(v4F7s%P^P zg85H}^OK%VGNLy(sES_QP+dChd`wW^WqOK-=hd=uM6KjsSDP4alNF9aR+KAHWT0aeI&P$aHr0$gAvMh zk|X#XdbiZchnCxNdOesXDv-0MvXci8G%R za90HP*fCDGC)cEw8>X3P^S?ruGs;gcd@g$GSANwPMT&4d(!s{W?&D z3TzZ%xY~0&HJ@%r{h~ACM$D7cldS!zqV%GS#`Ruwua-X>TpzfcCfLdgiv`sinKNbZ z_elH=$Js&kG5p1{>E>|gS5{>Dxm@4m5J)^psd#6XBt;7MD1V4?#4r@LlTDk8KK}^J z$jV&9lYI>z$+H<4777I2MzR4cWW3jF+iB4hF2V2!^JI}D09Y-SL_&J}6`g6<$djy1 z4s9@$%P3Ds29G{0{6OvbnJ^5)C~5+Zd+3XwhtmM8@3W?Z?PppD zo#BNZ>G305Hy^F7%UN9t(pt2}2SO5)7bCH#9QNytjOk`&qf6xE`X`nF7F0~aOtw2| zy}9aKQK0)Z;X^P6j0(}7-HK*BZk`bBVyfNhvhP&8NV&C$@{}~p3|A%6&w_4xF!|lg zZqxF)ItPW+e6^P@UN!(l{i5@87*K2cvo|wNEB{+tyH-)oZ6q$RgCjeuEfPrGgSVd` zB9zQEZfd{uqWR?^U9B#aLJSCcWU%aX_ZsNxnzS&IHj$m}`$xi>{<@oZ>upXejtlv4 z3SwZX6&e<@3PWWq-AY{NSLesDaRy$COVS7_53aZfLuQ0=;XwhA-F7XFLU#nkd5V2* zkG9FhJy|1eW#VNpO_FJBv>BtSNpPvW61S0Mgf{Nrm!3ZLUr-BSozFT`nt(w83?Rz{g|&H;N#-lTsqa$ICTh5{t3dT<7E;m zAqdX^?DU3@!R!|=$9Ct}eZ!an@_lPeg0LM4^h}wPy=@4+og46rp;loD-oP0Scgg9} zE$Ir9oz@9p?URNFL_oOc;A?-NQ8{BoID6QDx)ZQaU5qZJn^{?X=*BtqU}yS3Mr~PEaQB_f^GgkIw2-lK{(do2(fahz-*G z@@v)mqe;^K<#1w=bsq6_3L$N3K6_$yt_Lx(w73BftkW<%8U3j)$;F45#4Ta;S*Qx;CK-tIdT~yU}B{Ow@`9^m{eB+F{g2_~?@Q|Py zq+kpn#!39mfhM2ka-0%+C;YsP#i1B)GqkW4GDb9s?bK=Wi)3Gq9W!srA-Dry*W>iz znS6hn$0HYDa91G%X~L~Vs(bO!8J1L_=a<}<&%(-O>&JOzdePN1CFXDT$Go^0?{a*0 zr=Li70MqTE(qZwZtqhmxRpn|Z;x=yaF+~rc2Xs!Pp$B2TJux5*WHqy<_MwIfCMeo) zjVM8%FIlQsvaIKflKE)v9wPFB-Gv&GY8C2J30=EyZQwp7CDLK(N89^+K5~H_hbX-H_kQ;%C?y-u9kAzHJl+%v714ww~hFh%_IArUTI zhY~YYWL89d3wVD8<%El25WYt?P#akQOmL?}h;&2&=%}cIb%BlCo;b974nzXes=aB8 zR8ANOe*`5dt};S|d+t7*QmE`ksxfmKzN#_sseMpi;26Is$8}ij3bAh&QZsCWQtoPD zl^m>A;Qf+?8ryGSukFFoFo;kde;wf-wq?7Bc@;V(C7E-)Zf#Ifq`(v^iD4+f_sjga z*&pjY@G(A?*3zLyO&U`za(Id@<*d6ZrUrYz%)QH`SD1tY15uTim!c)rcX>bbQ5bke@eHLwB+sCLl3tItPX*vPvc2$>9|fdz zi?Se$Md^loav@SWw$5L8)IOjw&quVCuA|$e36)1e|Jgo4(bLCy%QW!~(Q@M3mQ`^w zH@e-0z$2$ew~p-#8MCA#j$kKT|MUEQceKX$4*8!lO+wDdij4sTgf#Gf@0XjrhM`RV zDYJ)TP}cwST;*jbq<;dj=?0X@Khe7C7>eLu&-5A8`oEsaXQ;t{73X&-`G1uWC}^>N z6;wEA`+wSTFgoj)~jclP}eYBqG3T|l8w=F(7vAnig2D?;C%XE=XH*P%SYFZ5vaeUl)81xw0 zr{!}e!qQ=wXQq=Bu31@paUmE2_Q=av;4EwXXq-?Q%o&n34sjD^5`)GM zl04`8xXx9ZBP!z*At!vuM<9ZMRb1uY$kI=d-YL22k}BMVbeqbET3Fl{RxE3Cz!A&- zMCSL9rZkyvT9xa1eTwu;Q24s z0!ufOmt~vccex#&Vx$Fkr}_&y`viyqAcSAB(2NT5nZfNVWQ2tHAuBU1qD+oHC*DpyQlim)kVu0qO(4@HEu`<5oK!D=3i27QTrE zR?198{fRIVf0GNusHf$AR+al|>Dy$=%HRi4FU||nh_W@-u;i3{JbdNBNdAt{&@Y57 za{D$V)@j*U$ZM{|VOQ3gM-^YccsX}gW^`Rtw0_L~fKq*S0+~yNR)Vw}^=CJCK9!hL5|P|D;KS2mTQb}8VKP{$G4BOtE(3UjA^6K(>cB+#=arLJ% zE@m!}Fg*!c*Q;XT@!#3C8Z-XlcePv5uZ6eK&N}Ntn=MTP;BcG|Y1HNpU1ifOJJ*6p z!~IXrteXWL?_h#f8P4A-O)WVaLwD39f8?#H2LyRle583HG`-={Kf1M^nqokp(@syU zPR?D@+u5pZMommVEY0m)G?#>w2HCY)pN`mGoLuK&BL+G*syQdUr+eJOb!4bNlJcEi zK^|3jTWw+h%o8oNe}FNtR^8?*DX>SysFIGLjQv)tjP$m+u{!NZuO;ni7g+3tNIh$V z_u$bPm}IwXdsIG(9zAk_YZM$mY`jw8u`)QFgfcYAZ92&r>ZzmbP=ua&#$l^p6U3v| z({l{{9j)B zePJJimV*PeVw#d(v*A6Q;eLoH)PJhQAJ{$#ghcr}ZI>+?@_mF^VO?=G8DDl_Kxg9b ztNWDS!Zd>;q}@a24kJ5?l=4Z}g~e%eRMt8I29?M@AI|qGY~b{rJQ9fY`MY2O?9$Iu zb8d+rZU|wMqid=sXea@R2Yx0E&W)u)mDVM=PQTUpa{`eShIdDZ+do;Quc1NfMDF+@ zyY#Ni3+eU*56#$jO(ap@f{&w|?gagYkhz6?h)c(~ik;U=Ds6Tm@fceW7P@o`(+D^L zibM9^z0;8-LV1Q*9jD+cZNy;1&CKJ;&R>i0@ zE6V}fbsICA+Ubu_0|IVX`Kh+z!Jwf8ogax94hJxl&GGBAO@8x^l-X!1Xd-?XKNfnK zw?29A=Xv98aGOXpq*6Nh+yv8*W4U3D6|?g<0IppZxV+ov+q&%?wy7uLMM!yoHru~J z+%l^o=Z;8TaawgmyzaYQFRq85&22;Pn6KCx{-UOdffPFSq&6-cm7ylvuRP|x!Iw!i zQ;I~j;RE3Gn0_6AJA%jC0|J7nO>#E2uV>i*zTeAqNg_kv`f$bnhjS5E1Nwh{q(I46 z!O)ZdYt^;p#!v5WuG5t|HG>;4jNsS@Lm&U@NGe7vOvYS88XZHZfEF&7A&1;z{nv-t zSnVE(gaMDUg2|%#Khi7RI6H$qas}v`rJGz-*q)B#V zEn_*7w$To%Nq^o zV*4XR9<7+!Hg+W6Eh6BJwonn=+7$M( zHq{3tyTTFubE!)|F9#RhazvJU>ceVdExHV=_ji=YRuK0-AVO|AQk zuD$DL#9hx>-|WvXM6-|g(sUjbEI_(wR?=S4h0?{J4LJ8vIDI4=ex}Ov&G6 z&m{YKXu+#GenEiU&Zt zn-wcmd^KxfB^D!1M#)%bny6cOKcspNYuL@kGpV-TZXfcK{5L3MJMmv}yUdjBM(elC#ka0efAs9!Un$WCw~hV{SNqIeTj~ zUav=pdx58H}ZXgp!%y)7-3^eVvZ8OF?zA@5VHHGOb?uB2}wZC zCRm;sd)Q&#jE=QOQ{#uHbJShPukQ#rRn^BfnrJNpSe@kC#80}fx}t81{zLm|5QR<@ z@Nd4;;Ted*ZpmhbvP5L9DI=r(`)SsgE34Xj+xeHh;^&vb7s52a08Iea+`M{>dPTFm zptQxTm~wGkB`K-J?mBG(exO;`QkmRj<&r1)g!t9a`nUeZG$qStaqs$nfT zd10(dXzD=K-CB1XEItuz)zu1Igg4mg2gHND7wuo-OP_iz+yjEiv=a)lNX9T zy7V|IG0OyE1+0;K#Hj?`F>i9Y6r@;BUlM(R0h8p_#w$D^dXqew`tReMQBkZ>Xqr~_ zo*qLC)gaDLGN+PSa++~4Y)+Pn!YD9ImuxovG8$456HC-Z`6(pz<()97Fsr3IXMq9|d!?GF47ZN6NIx6NN4NyKV9Oy;8kRRT-1 zQKoKfD~i@BI+obx40GhmOz#nI&F;`~$lY6&)=ia0gdDA0d=glwxuf37%DO^u*SZGw zC<(UUCqptxMYg{qIexWV5r8)S#E~b(wk<_8L7p2xNBj+2Li=q5C#OQHi+|Y=tM`i} zb8mw&XB0xtxX5(;=qc>SO2?VoEyr1amcoj*h`apD-^rq8^ic~Jcjuk}2lA5ktLVsL zwj5?c>dT*&8(RAi2$P!U)`S5b7dMWzKzmSxnN7nHZluQZ%8A-DK2>UwEauxQB|v1r zNK2XkE7jTE76IfNjZZWq3WKP9q@O|0;OdC{LAEufaS6Vtn-*_C4_+r_7!Tn5ksYxF zV|f!XE+nKGDH#Wi=c7D8a?rTujmw$&_WP(As*eFto-s<><#hv(q$Tpx@F)UpT8;v$ zD;kOd(dbaqUirO{FBfVC>i&KOv?}q>c_cM}u?)I~gsky>dN~Cm-#>)n2QIhr-kb|d z@;{M*XR42AJQ%XL&&?eA=7F7F10vI}kR6IWTX z&S?ta5D^GGyaVun}D_z0rksqtH(Q`N6SO5qiVs%-!t*C zx!|A8q^>?Avbz$=;4L$2^s(x~dUnF?QTOnlAAJn!;C+J&ZWi%>$X~^J=+kqYYr6UY z%FLrvA}!cAFl|Za7e~658JeYE=)~g)P}t0=!DPsqlBj#K`Dl0ZoZ;l^ct1GC10tOI z)8{tWj4~&PcueDu1)QbNpJb`AjA-AnYRwm1&xQnX>_3p-;R^wWz*01u3cWMW0|%oz zP~yQZB2!%0#g)0%Ar`1hQ%N1#EP^)AqeYazq=qzg3S-Er8`PthrsC0IhbX!UIH8rb z626M=59QWW9n9lj#PBz8_cC0Mw?Zh#M(B4?Ywwu3y$Wd?93^RJxe{saZ&T7?8OWI_$*_e6jRc2x!K=eyDVwbZlyp{#f9VZ1{V)cdvt9Qd>p*gHZd zgkhDz-u|U#=lX@beeF$zOGf<$ut&?({vzlihrt={k!KIbyJ6X<>?#VT%v4slm(}fJ z=i(3??u%`ff?!2bsa*iBS^HEQK8#uK;+J~oxj=xhAFbh{G2Z>A9*&$Xnxhik*b&zF zRyPpW_y!4xmD3#~(eb)!$$3_jQP_NLa(D0_dz7nrUPDzs1N9l;@fZUDDO|2vNn4<} zzL*vpukK}0Hv@a!T76bLAQw+SeOhnK!wwz^;G8vmlel>Mj}u;<%v;o|^mClK#?5@# zB;L4ZA&KJZRijLprql@0lnxu26S}M|3rjov(zJ`DUOFG`#9go(8C8oF%QjAA>tS1M zKsc+gGa~+Y83aul=VCH|V`@6`*mZq%dN_z+8tC4naNK|_Tjl2lDEFBT)LW5#cDBf( zzGZJUym6E0-4aO4n4S82V;Y0U^ut?{Ax39!Awo#uD|a7$r~7G6R)aulS} zw~00A#BVOlHB5G#dSX)Ox{}e84Srjhs69-H5P#%Tu1W976nz>Ej1IOvo2WwV7%1vU z(YMWg(jbQuhe$%F@1eR!qz^Z30SbzI{s-~`59eqG~Y9jdo_LCeQe=_xKiVA==dS0qU z89dsn@B4Lvryd-u6K4;|;}ZzAqB15&3}&5z>Qqp~b&gn@_w=V=FB2>FqmePGR?G~K zR(dYOH!wZm`H=EtvOLo15}z?gXUV(d+FbIyBhS@YYE2h}%C)P;?Eb#@DA0Coy7W_i zp>!l&sMt3H02RHG9#Rom3bm}V7wMOZ1+Qjjc9O~<>~emS%RZW=JP05eo_z6-n;?H# zjnB-?`1%(%Ma9r^5@P3fO7HyC*mS$I@uoI3B3AGAg;RZ7mOpObIzw}gL=<>pHM>Tg z+4yV#8ltVVZ`$VMYKwX&+O>n?{N&WeHH^Pe0udhpyv^Vdb&{!;ka~0sFNA2&Zv19Z3u)tB zvE@{8>)?U|R(`SzECU(j$$^SW#!e_C8?Yt-4MI@Sq~_M4kH5uPhr1iU$zZ$om*6%X zxP6WE`hN*|?C6_&H`o%)?G;P-eAuIlIs68fR?-3I>=|WCJjsA4Cpx@Lw^-l=V}gQ| zQIblfivh_a#4$Wn^@)T%ahGQofKctUS6%KjC%EmzKR{sAwW(3nIto)V2X7Gh^TDqH z*uW!LLPV~yiU5(Q6KYc{fqQHPiBmBM$Acz97AV%BPR%dy3bv24&vFtIEMPKGpifMT zyj_7b6LkFjro&)Nx5%DHnIT+~zLKcOOj49xEE7x;hgFt7r$jn0wh1iujRQDekR(*? z&vzGp89EeRJX=W9;U%GmEo?anOhxViFrxwg;5kQUC-hrK5WMKy34awm{Z6m-$Q9I( z9Tew5MS#li=qmyu@M$5MWfp-u9xYA5WgM?BAdeh;5VZQz(sYL6v@tqP=e0f;;9$A- zL~=(=ErL!#lQOJVUGG*xbZ<@te{TK|e=%3CBtSSAxeE@Ra^9U{MGj|(Apl7M1fd_f zfZei>2gi_sqyD`yd?g0r?%qd~>^4lRX0(s-hYZ8hGYKhJ1|HYgc|++Vsh~aZ{|KrX zKhxXtj{VgV2b<^fs~nmx9W0*_R0Me38_N~t&G?u)@Z*{=Phka7kstU`^QHz@s;!!z zhKi4s6pL9h%M%;CjsQJ2l|Kyv@WxU--XK?qI@9AvCFp2jP9m}Fz8+FM))kK<&*TvS zh$V0d93AsDN*7AZ4Db=E+ff`=%8)pQr+k}6z|12;q^`SH+s|Rn{$Y}L)s{5g-)x=&(2FSDFLEngI3=$&55Er}(r1B>3=&sKIXre5COT0KlV{_HX6= zh7oi+WQsLtd;t-Qg~c)P2&nmOoFU%qWv!VNC$6IYGqgUE6N*RjPIxw-1|_=*0wK75#X^mcSq<%0tD3u zQ}#GFn^!YVl1C#3_LWMi8g~bkt19HXSa+wDts&C_2FoYa|zC z3|P`BS=Jy5#Yx&6#%cAvGEyFuXI@+*K$DOh&t|zhub4!$lVouO^pWT{0slNJmZRz8 z-Ob=GB$Po{lb^I5zU~qHdlHk+Le-zq_&&|pCnp(+$6Rk4Z5DDa`0iD-G0(K1a4`dW z^VUE>7U$5j&97{gA5xdWBLhm;gIzSV6ExS|jGF}SsK=kcUW~zm3WVSNNT_#mVY$V7 z4$ijs8AKXSvA?MT$bTn~IRJthrC*4wNI-*de=(T~ntt^)-n)N2;7h@nbOEZ|3X5+A zvT6E}sESu<%Tx+)01gRTZ|qFyTo3tfdjYSQv{`p{9VmTX=tZt%_jG&2#S7OGqiZLI zlJPKj2K_CA(g)|CUW2g_Z5VE9mgYmGs$P_tqfw+K2{n`f*1a%qq8m8cN{OgpnHUax zWh!p;{$8il7^Yx581O*`MIHraVm(50TaA-S!fR%+`pRR)S|J&m&er&^XCIw0tmBuragXtYD?C?K?FqVcTNOom?pcNN}xHhqno6&O%2EO|GdcJ_W89)CY-_ zv;(PDWLU!uMi`4l6(p%C-*W4?z04tAE}Rk^4u_cKBKX%wyo0W%HZ9qWuCM6aFgif~ z2@d855zn;-35`YU1&d?C@rBNR+=i2CSIz790r?Y<1r9S`;sALQofV8`>V>h+i3m{* zn1(!0AmHEr4poK)h1{k?1PU&Q_lUx`A37ZAbPzh~u=6}J(M}Y)1v}xnon2-|?^4Ex z35x{6t&GVm!ItEq(+APwu5zZjc)XEn&pQQTd-<4{2_6g2yW5&XJsX_7 zba*QO9}SU05z6mZB{1#CliA<2OCyQ}AT_|_7KOzn*t=_GrX9<78Ta}#Ik_Eq<4|TB zm*B57b%il&?D&moytxmNPTq0x=J*zneV#!ciu4{na$Wm*1NUha~x7EyUvxbb25p5EdaC~*EKi{9P1J$6Y2 zkuy37()HLq#i!U&hc4~LUptmM(n6gV3>u;%Ft7HoisAUX^2iM<0X4=UB zrKfJ|o54BHG1ZZc1tGk_?evE{K%77*YK5A7LT;kiCohXw;R=z1Zt0GfpW@uKdbSP3 zWo1{wZ>$-J8UbG_at3Oj0;zK@4Z9xBYQoTy=4V0s5b)j?hId7)y&;N>Oh|{}P6dhN zX=>mR4qrJsm>$ons4 zx}0YndI$xJRU>=kiG?#Z0Lwk>{8!>N+PVpNud?KdiC(=$taW4MPcJQHOeqVU9}nx`L=AF{ z%bFV6J^KP>1+7<*I_-K?&w>@XRC+~=THwF?Lx@2Z9en;0Fr}Lt=0^lE3cF<9|sQ7Fow~*O4AT6BIoI zVi>DdeR~X7*_GtkHtVRbvx1HdO+iV~S<(jE4@yxP8`YsOfdbt{yP0+WQJZNbr9FMV zjlGc)=DyhWBPDcU9x%u3sN~%^)EirU7GkU2JW*d~4vhoP1zP2q2V7H6y=*2{e9<16 z^b85=P*W*sNjQpe+>g*cN@M@vX`32vISr2=?Q*7Dq6R;)?oy_lSIO{6sa!{bvXl~- zYLoq0qEuI`AWhQJ%4%u}6=hsgSAA z(XX-;1a+y9@bDO1N43#pt!1Ucv(#l4jWc3_Q*gjbVZf|Oe8{Zn1XbmYP%{F-OTtaN_s_mmp*3Y_!IF_vrE{~_y7mquZHGn?)+sZH~SHN5Q9OAOdt3g-0 zZ3nMDeY8f^R+ps-Z*>tNq6j5Sr`RtGtvb9nx?7;>La#bEprGgFWGZDW2%@vQ7}dQk zo)S6N_(}b>N3{Ll#BVBhdhn5wyD6)YeGJXe8NU-BT+`i6w_{$5`KKO8KNs@oQ9#Y9 z#}M~Vm;gzPr?xEor(PL|CF4qKCqHg@RV3&sp-%95rZk6LFYU4Idt>K$p>lWz-MOGK8o9tN@O3B5-P0)N9LYTm#= z2Id>!0|B{GB}+75N1mEjI{Z!)=EiOA6m0l9*2_n$&Yt@bsPLs0SxDOE*1MZ0=xJ{z zwG1FLjfRhWo@aPzfN(b$1|`6%I{Y1TA2Yo|sp^|Zw{ohRarX^|@)(J*iGW0V5AWmbE zzzS!&Z2ZR3c$mroZq-xW>3ez!{fg4tI_i4o zK|49loM)`o&>=OV23pL)Ap;YClBNcJCZ6Zp;|bvNpFXIRYvs{`0|ev`2@E6$D+vmQ z1_T8K1@sMmSSyCE`sbX9D1+Ac=cPGrfR_7L;cSLp|6fX8Cp6_hgo9u&^ufO#stIWQ ze^#ByY3RUzRvol$=;;4eCI2(#wCq9`{KGfsokE-cTRL_Ljq?v-d;AW~`rpz9LKw|| z)*vr97>0j)RUyLY{@Wc18;1K|MFtN>`=9Nnf(qt;jX(~xFpmHHJtwR%Gyi(pIblfu z_3VklH2nLkG%1*x|DGvXS_|eEK&j_Dy9ci0>N~~!qC1IJbF@OTZcYQvvKlW4pCUA> zW7Xb-(%S#$7w?L+e<8(mr9WaE>22&)>^x{-Mb+C5Zklt`aRmW(!-KT#2DsJnyRSD+ z_s`c9JI=2Met6e>hf$QIA?R?_-^8VFm6q==j%$l;Bc%|kkY!;<>N;rx0ORo#0WyVA zsxqM*=9rit^7~Q@sV2aAc9`ttc8tGg+`udPLY$9r%k37Pog=Vq*l68JbZ;=$*oiDe zyHf@$L)&`(%xUI&_}?GDw6L{p{|{H+7+hJfb{#vJ*tTukoY=N8adLu5GO=yjwr$&< z*iPQuxm91){eGRQK3%&`o!$NHwO6laEldR7is6lu-b6i#1}iO{3-*(#3J>{@o_CIo zz83bST}CP4V^h&d%#$02&8w%`SU@G!ov^fG>MUiUnj&^S*SJ!Gj;W@e3N>08_4fGV z1ZF_nrBq|1X9Se(zFWcH5YVrC+pJSa4`x?kRxYA3X;dz1I?Yn$B#H^3X;pA7)Sn44 zH3{Ki>Wkfo4{XSalLIqP124XUPU<0c?SuaA9Zz7D!@!do_p_cjbz}zcOn}Js21Yzr zQU5M1;3#xAHZA6zY&z~}v&SZr^T4>mJ<+;zQRY~vD!94;)1XpR1=yrNw7|OPT7^H0 z%2WbwzG5o^i5MZ>_Mte9Jj0cC@XC-2GK!2?Vd7#`YlzywkMkTo_4ZD%&#{Y@k9+Mm zm6X@tpr7!Fqey(v8D1UPs{!66$Z$u2ZMS=(%e*I^cwHyg4nACjT>+2pr=ERDz?Cey z`6BdBx;(Z+FhOGe*-H;VW~f{?AD!80UsNl1gaQT@JyzaWq0US+GE>p=$I%}i(0E;O zn7TT(tdo1$RN+{yTJ#L&_2Y+5Voz@hfPZF$xMQs{w%_q8nczV1|C>3apbx_i*wnUl zUgP{vF1PRlg&VRBqdoM;%<1?>f@S)aEVpweG#p6{VH@VE`KVND!k2HH4TYerkafm> z*#s%X#AUwj>8h@W^Dlcb4IOR1@L?3UC@SZ#zUCF5>6~~dY|dnq3CvJ^s+*MX>0E{4gy*YT#jwt{<+8<2tq<8SP4%yA^Hd$h^+ER7U4O8B;s!dMg5nFv#Htj z6vp6HSj;NnpWwT%ci6C`pe%n$1VrZ<#lsmrDmf6qG>Cff?dZ?|$j4P4?RMzuztdpA88O+UQR|5TlJvit)|OM@DV;H2==r5a*-ic~GN(Zr zvGR>l)jf#f-MR&U(zkkd5XLnMH9_2{^A9oga`=IiYk^n?K*>gu5d%|*p{uQ8%nZmO z+Fy)N84;f`=W(%{sh$CH+FJqxAX)IMpqrHc5h4%~_2u(G z7C(@npvXZp94I^5>wSMg(O*+p(v3`Rdv;QBtfH^F-%cDm2t&xkLP`b+|NT^m%=0l+ zb0VI7EhS4LBqC{Hg?)2(1ebjD+Vk5-v>kNf@#xV?RpyqCaa2Ij+mrvq;8UtkylpoGk5N)0mM=nWbHM3)a`K;MOG-+pdt~s|xRUJKp zXC_?qNc8iFQ9>&$lR%!dG5+|2fB~;WXSr4g|2K# z#x|`HFkFQ35vuJ%w;l(Qy#+m_f25EIm=r*Q!ja$5`CWwkYUWWMy{ce)oYGvv_|^Je z=<{5+^Maw%SWIN=(4rxn@7*Uo@Z#F&;nS|7_m$z;rAr;9f_uDPi2QOKdS{z&VM5!b zOs#khh`7VZr9}J7v&bKO_6{{#!16dw!dgtxX@{++n$xo>E1s)cExf>pTFJ#29d84@Q`a?JH z9iyr8(XUjSdd0>rJRYS7EV3`S)t!+gJv-bLAf(AFsL(jg&`!9<8+QR>y++yh=_-VK zPZaT|ERmDwFA;7Zi>4egesB+cHVdLEeu(XK+2rOlOlnn*p~G45>Q=huh!alU6C%&V zU`PCR*eR#d>7F?*RVj_@Oom#$=dlcUL5;HZAzY%XRrLeb87sz&kU^VTJ}0UPu}psl z0N#qMysAahOZS5l4m1EO@4d6a5{P1MG3yaif%aFCJZrWVx>FW-m`a&}4qd`6X-h(~ zkg30T95)9f(_oz>P)u5>=beM@g};Jh_5*%7m9}L1V%>`tvvuW^E+$Is0NiRShW@z9 zSNg=G*XryA%|Y914l!Ti%rL5(icY>gV0tFq_HsYpx@9UO<70k!h=lu3ypYHJE4r#~ z;Pfmeyu)_w1E;{R?blJ7fxw)FXF^izr6oA$TupoDLAo)oo^6ig`;J4W=k@M?+Aj~z zYyNNT*Dc5YYPbJa`$hb%155{$a3oPZ;ulP;VaqGygA6 zyd@UqzoPEd1el0_2+zC#hUOo>N+^M`K>H8A`s{>ZOP<7mg$JONF~~UCB>-hwj^;9U zHsCJJQM>N1M3AwVq`W_^efR7tLUD~QRk%HQJUwiooEXhEC{va%N+}OFO|)yU|7!8W zVQ!_^9#b@!WMkQg8Ljr(BP32mlyAjVW+i5fu`@#E4+-?7>b-SphNH z8ZcR-V+@sJ?k7%wy+!>jbS&p@>%KM(QZL7W8*cQ9YA$>OZD!0c#jDvgh=;~O3PI!V zs{D4seb$@t71+GI zB~5`byMnEqXLFIPv*El7$uELjZQ=Ikjm7?0QK;|_NIC?Q1hWt&dx*_w&vu&WCM^BY zrgl1ldYskfzn;VQn;UfHll_Dkn^j4^sT0}`ppM!Aw5z=#o#?}?HIq-7LZbto!s0%UhN)Qy=p$#2Yr z@x7G)C#G?&7lsosn69n7&yMQ1{YIlA5Con+K-4oALI<0huBpMT(>4(!J6xM6I#~Nt z%50SJ{Ykn@kRGNs3jHsn(=r!-vVw%f-s5a4n9%_)XGYNaz8~rO7uZwpBM0x^!IbiJ zCY`yUkvChW!As*_W(sKv4`g%nYQ6nwOLVI9%!*ThN<<03`}G7a^hER)Lm!%8cVOH4 z{OxUOJ_%(`bVqbVVZ>cHRnSV30gd#LzMoKv@l6gIs)aKj2@4Sy4^lYv@$557`)Sit z1c8NNg#(3G>Wv9ni89C`VVm01Th5~Y!7ceW`!C^54=G8#AXa)1B7#e*&=_Wyi=T{f zaQ0r51|nU6S}p$}iRP~3SAt~J6{dD;6&PTH$f zQoR6zfl^!_A9)K_rh)AWauYwRAa?vu4tOKIv$5XR6K?gb z5sN_>&{E2~rk(?#tV0+RHKb(XM!)MF4yiMXSxqHZPX)2ZcujBwe!Qi0IuG zdE<8hNE5y7oly?N3C))^>cwZst!zdFbcfq7xNoIG^R(ygf;Du;MyU_+xSZ&|w0@j+ zxkh-5jEEvW@csGl7i6fWxLW~3emf?Gh?!ZfB*t~FfD{9S{Ftmf)2H6R&%|)^UNZHV_cE=)qg>i>Td~WfHkFj&cL6Pyw zn4&tM&Vu!yoN7CD(efU+lkxN1wu?-3NcC_gG3e=JJbI|{E@?5(=q>=2SVO;=KcaCz z@tRJF_{#d@H~(&5+Hd9vFYsM@q_|#dK4{bp*2wX~W1TA)fB?$t0$;kQG?H?#Ma={N zHnl_|e}_fjT7>yGs?QrC_{|&tkd7`oJg5o7UzP$pkhr5Wi_pGLdbiM;!c2^22Z6n_wi(Q>1^0~k0(U0YCIGqx3cU@;# zh_RV__2`H}vJKdpjYk2boY7VTkY)74Cl@6GObpi;ZIKcaf>bDD?m%6`4^)PYrv4mc z#vFgAU2BO>Rt1f`RF7*S_8pDnL!}abIv^DLm;CX>W)&?UJAr!57}~1wZYTu#XbOVT zBPJM;&>0Jj6P1(tX(T_nklg?rV3;qMJ%=gt9$!%pUGi%iJHmk8Ed0>)P1qf(LP+(; zWIB>A{b6MXyr^@L%;mw)NFhXLzhU4M_TyM0%gN?Gpl^?@GN{r)ALSlb+?p;EjRIPs z#=i7y#pTvhZc6LG5)XJ=dvo254%74p2LK|IFvpcsP0z-15e3wi={{f-uKM z&|y0WH!{W36Ai?QW=20X+G$fG1P8~5#0Dw$iy7L$K+x2}&R{=e4ePJ5!et>YZ>Sp#{Xbc5+UX&+|iYq8js- z0}dSy_AG0AT|$3q_GNSwFosjw{*ZLmTviFc5w@hsW|5dbf^oru%1k>f?9+M_2^D|H zZ>ro#CBI-se0$O*PZOs zp1Z0x=dP<}6F!MYQ6eC-#kR~kw^((pUHDSIA)5s+tG~lqxymcP?d`qqHGHVQp|UAX zZeXj{vZ-**^jhYZ}J*UwD@9A`JdNIxlMj zCiowVM}7u_`>%UX^bSV$pFe9HC@j{$$(7Kswf`tO0~A<}f7eMxg9Z8bRVEH>!M_m^ zd{~SBP9}vd{Rb*Fs9-PubrVXm!RGv%^OpnG@gGXn<$-1RH#tfO_U1oSU$VafEIS~v z*D3u!!OcD};^yblAVi}a! zn^*dzd?*?r9-A2=N_OPG(9($YL-MNL*(yd(QWJg|o6i`eut8p8C}R zCzFyF>CuNfg!}43Y?mMH99K$PlTa+}Zoj_Ay%|wgf*=!^F^o?2i zr3k*ObppO|o#>Te@RJy2d&RtJGC#My)m2FM4$_F8liK~hV-|ne8I6QVMx}}lXkJ7w<=ye=*MgU*wwzpQ;AUEAc_2XAAR{E zx2TVB1Ul&Ss!~hlAUl=VIaI(j{`*;PJ0T z_|CB}93HM;n&u&AT6mwU%xt9#?560M#(7KLO6Hk773q{c<$g z>h4Xg6}0>p={OQqKK54HD)l3fCA6%MB9Au)bLCgAdnj^}2)y6N|4Vju?I?Rj7}uEw zA?5=z4oRoqM>=*WwrmRHb={}$HX*pe0#n#EnPeBX?l2!ww{cg$vaV)O6|ub2WhI9~ zuw)KD+wc0SrB^n3kU6*MqGd1JzB{yg2M8m(qU^ijLS~y!;aBYhJ|O<{US{v+E0FRH zXc4~m*#7`pP-R$7z^0C_^Li7q&sDYHGikK3CPC7{8E=Cn%e*If>l4xGeec|czm$fs z2og0gx03SLQ#iO(c-;XjXAEcN_~<|!C6bK6)6V&2tX-EVjUD=|YQf#J_o%7sCr|hB zvAt8_uVj32hJ2pXupeiMHCJVNQl{iCF2C*u`Ci>>JJ38_0E+;un?BkEpJ%c(8RyIu zg#v1YBVG)%*(tHU(N7nZ^0MtfhR^_nMebgp+K~k6gV@ z;2$4f9cBkS0KE8y?lP)VcVCUE8x7s48SEFcRSeY$SbO0>*xcc=@{H$*t;|wpo3h?jj7T*DC@3GH@P8b$(UaLG6e zg#)U|H?C4K+Qez&0^0GzxdWs70tWJJO0HeA1enO=vSq`5i9+|3^LZ`qTfLGjB8ryf zFyi4yrOV|LEa#2;D$&RgqRtD~G*V+`uP?^hLxYp;zba9`-;E?8NNoaJp2I;M~CR{RR($~VF* zU~;C>y=E-zw(~4+VH3zVtJ^L>NE-wN(3Qa`Yebqs=O zt~83%y5*u88)Rgp&}-rdOD>IYSFgoQ_l6(Xq$eEc4_g+b+p}1;r5D=;{?!0s)O#pOOn>h1kH^AMo31xQeSk-}(CQx)nal$yfwkURl6U`addRs^_QY%RyFnkcWA>dz~pl?H*IW5Q03j2Ox_!q7? z95oJ!I3MY(;qVs*fR8~}1$50xX+#BJXfq#HOa=`fyg)`zIDOz=wEILL@jp!YOn>4Z zkP;5$L3(1NY^{dkf8*!Nb3lWQ0QgixnwNmgk&WaD^@8bSfrRlnfhd5lPYL|umtOJX zAK&of)xJObCDkQU)l_Be%p#7RBhO7y5Vr#Ij*)*ic24^1i>8%foTuekGHNE}(MYy_ z_w{e+)%)hJWyqneu*oFEzgMW<@R?!!aWS+8Bi^t}gNpDu>2S9PJ()uRjCC3Q*7O<7 zJ}-9i&{pKT#QQET+89lN0x^7EiA8n*-l`cFndnon06!3rWvaO>d!g}0Z@(r;enzyP zjqfOw#P6Vk#f!vAp7Ny8y~G=|1($7w)=6R;agSb|t2C~@cE_67qsp*;H25<0b|N;f z7C3a*;+m_$bqm>GxZ31^AW5N%w#7)YL7TcB_f?9z=@N5M@F=x~oJ4(|B;{jTRp6L& z4-%J*akMpjVb%PpefyDSGlh??yM+qZg#wotzT)B@_sWDUpTWXPN}=YB4ab7H&WoM{ zJ7Pzf%`obQ(^Caxqk;O~J*dTL_7p0OAK1J(@^#6A-J5#RH0+Up6-$zD0Yji?dWqkC zE-iagIqD`43jsAFIaZ@a)kGU?AzDccs^V)SapIF|a8usPh6S67>Qm)!Ogr<#G^OH% z%_<>y2x0`=fGIou4rFYgO;1s_wpESIl6t#}q;eHZe>HF)vBI2ky!0-jvf1umjl{6d z?4pvd3#(bupbl;T5ws%hOEnX_FhzS2)&jqbyOo}!atxnfF)lKSqCL3ZwG_zWqTN_I z?l4F4CGPi{!Pjkip)`N6a@u}!cYPj;t9uD`Z~gfzdluLcI4G92K7Z+GY7hivdbroP zG*~CkcB*Qm+3{Y{_MtoQ$;C*lx~a9t{8YFH$St+i!P#m7Bv&m6sA`)Vf$n&XCkbfx zoon2&I=LP3zeuHl)5siVj|&|1JyfOR>Jqj)f0Og;vBe)KG7rT{%?I!ECqo~$vOt}j zG}G)9hV-%|@K+gxFx_g6KmG(SMgAryDdBw7Ea6gQ4xl#nr?M{`J*Lt92uAAaY;|ya z@pkSVlnS2&fJ0_fvSU!U$g&I0ScUJZm8x7vumQb%<*ggIA)dJxj_JI7>48pNr#)VuyTETUc_y;j1CK_nj@OtA(YFp9(1q~bLV|<5!Y(3U9 z;+R|8gjY7eP}`SL_RZrW5@i$mt~!flUCacz`s(gIchk;FOZZt7m1~W+M@o#wTp(IP ztI#*vhKw5{fE%gI=LXzD7i0sWmPJR(OHO`;d~JmDCPQD(nwFZDSl+RthHD_wVE!Chk7(8a{4*eM1~bsG&f2#~vskAWD`05Au9R zN1!z6!|wmX^M^*T{{I+d3n$pRe^4Ly7p&rcPX3ea0I&>zM7eK|j&ET9Mg#Tm_lIvN zs*g;3lLjGlja&_7+o_=>f~~FTDB@|3_|BK!*cpT)MPFr0y%DP;|G$?k#<1hh+R*^~?9rXbBS4W?3)N#AYAgv&ZqY5pPc*?$Q zW}4w*`P8zZ2!Gz$c0l$!{F7kLg9&rBGM{}re)uq#Jx}+j@~vRNOHKLSZ5P)3-gpVr zufXPXw4wSXfx^vx1WQQmW~8@Fm_gYzrQOwP@Fx2*oR9|%q4Qcfb+ zAzIo`13`#5X;!Eun95ew^X|WnM|`aVUN$Qc9nRsGn0!33Szn^l05Sb8QGF~jF2=}2 zc=-`Uk4Zd&f*F{g;W4b4v^Mp5=eSLz)(T_pA|Qc>_rY8cS{g=A()uMUYgZDr}09$I(ox+QD%IK6O+hQwkZ#=*eob2{SOUAqb@sf&I=)I z;JCyz*g_@0rW4F^MQ63SFHqQe!9YY+0MIx!VlK>!g|u=af^@Ygcp)8MjXAdM-{t8X zIHZBcnKtlNZRN2CWTU=Mf@~Lm+Mim3t1f9gS4OrJttZ9p5=L6ppJMOdj^Hy3^naY03qFAEt2(T5oN39&9W4>p9p7zsq#s(jqlT#3Yu>KEbUQIF8HQ5x_=o^e* zI&3wq!DRTC#hl%vogxw2^-dEbG!KxsmdvdlZmzmE&D}o#{CT>NLDFHqlMQpeH`o8X zOQ;0GvH&)fak!8H-QB`Bot&Y@#)L5@1g_9EIG4yPFy|MShGB8$CSFlDBUqM%RWa`u z%XE{^pb#l`>)*3}qMg^$Jv3-_fA?9rycV*@xhi@ovslhxk5O8FDCmtXWyKldl9h#C zSw(6wge{J`7wm+;;Jq&_Y-RX5RwL9KsuwnL04~Jk%v^JJ50kY7>L7{U_pXx#KD~6_ z)=Ivc*r;nAtP_6iQz8n{Mk0xs3;P5|i;&0{v_1#;NE!>AF#Z*z-iSx{(%0AC_O5OE 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 diff --git a/cayennegoh_ip_master/authorship.json b/cayennegoh_ip_master/authorship.json index 0d813b23..38755267 100644 --- a/cayennegoh_ip_master/authorship.json +++ b/cayennegoh_ip_master/authorship.json @@ -1 +1 @@ -[{"path":"Duke.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"cayennegoh"},"content":"public class Duke {","lastModifiedDate":"2024-01-30"},{"lineNumber":2,"author":{"gitId":"cayennegoh"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-01-30"},{"lineNumber":3,"author":{"gitId":"cayennegoh"},"content":" System.out.println(\"Hello from avocado\");","lastModifiedDate":"2024-01-30"},{"lineNumber":4,"author":{"gitId":"cayennegoh"},"content":" System.out.println(\"How can I help you ?\");","lastModifiedDate":"2024-01-30"},{"lineNumber":5,"author":{"gitId":"cayennegoh"},"content":" System.out.println(\"See you!\");","lastModifiedDate":"2024-01-30"},{"lineNumber":6,"author":{"gitId":"cayennegoh"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":7,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":8,"author":{"gitId":"cayennegoh"},"content":"}","lastModifiedDate":"2024-01-30"},{"lineNumber":9,"author":{"gitId":"cayennegoh"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":10,"author":{"gitId":"cayennegoh"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":11,"author":{"gitId":"cayennegoh"},"content":"","lastModifiedDate":"2024-01-30"}],"authorContributionMap":{"cayennegoh":11}},{"path":"src/main/java/Avocado - Copy (31).java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"cayennegoh"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-06"},{"lineNumber":2,"author":{"gitId":"cayennegoh"},"content":"public class Avocado {","lastModifiedDate":"2024-02-06"},{"lineNumber":3,"author":{"gitId":"cayennegoh"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-02-06"},{"lineNumber":4,"author":{"gitId":"cayennegoh"},"content":" System.out.println(\"Hello from avocado\");","lastModifiedDate":"2024-02-06"},{"lineNumber":5,"author":{"gitId":"cayennegoh"},"content":" System.out.println(\"How can I help you ?\");","lastModifiedDate":"2024-02-06"},{"lineNumber":6,"author":{"gitId":"cayennegoh"},"content":" System.out.println(\"See you!\");","lastModifiedDate":"2024-02-06"},{"lineNumber":7,"author":{"gitId":"cayennegoh"},"content":" while (true) {","lastModifiedDate":"2024-02-06"},{"lineNumber":8,"author":{"gitId":"cayennegoh"},"content":" String line;","lastModifiedDate":"2024-02-06"},{"lineNumber":9,"author":{"gitId":"cayennegoh"},"content":" Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-06"},{"lineNumber":10,"author":{"gitId":"cayennegoh"},"content":" line \u003d in.nextLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":11,"author":{"gitId":"cayennegoh"},"content":" if (line.equals(\"bye\")) {","lastModifiedDate":"2024-02-06"},{"lineNumber":12,"author":{"gitId":"cayennegoh"},"content":" return;","lastModifiedDate":"2024-02-06"},{"lineNumber":13,"author":{"gitId":"cayennegoh"},"content":" } else {","lastModifiedDate":"2024-02-06"},{"lineNumber":14,"author":{"gitId":"cayennegoh"},"content":" System.out.println(line);","lastModifiedDate":"2024-02-06"},{"lineNumber":15,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":16,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":17,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":18,"author":{"gitId":"cayennegoh"},"content":"}","lastModifiedDate":"2024-02-06"}],"authorContributionMap":{"cayennegoh":18}},{"path":"src/main/java/Avocado.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"cayennegoh"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"cayennegoh"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"cayennegoh"},"content":"public class Avocado {","lastModifiedDate":"2024-02-01"},{"lineNumber":4,"author":{"gitId":"cayennegoh"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-02-01"},{"lineNumber":5,"author":{"gitId":"cayennegoh"},"content":" System.out.println(\"Hello from avocado\");","lastModifiedDate":"2024-02-01"},{"lineNumber":6,"author":{"gitId":"cayennegoh"},"content":" System.out.println(\"How can I help you ?\");","lastModifiedDate":"2024-02-01"},{"lineNumber":7,"author":{"gitId":"cayennegoh"},"content":" System.out.println(\"See you!\");","lastModifiedDate":"2024-02-01"},{"lineNumber":8,"author":{"gitId":"cayennegoh"},"content":" Task[] list \u003d new Task[100];","lastModifiedDate":"2024-02-08"},{"lineNumber":9,"author":{"gitId":"cayennegoh"},"content":" int i \u003d 0;","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"cayennegoh"},"content":" int n \u003d 0;","lastModifiedDate":"2024-02-07"},{"lineNumber":11,"author":{"gitId":"cayennegoh"},"content":" while (true) {","lastModifiedDate":"2024-02-07"},{"lineNumber":12,"author":{"gitId":"cayennegoh"},"content":" String line;","lastModifiedDate":"2024-02-07"},{"lineNumber":13,"author":{"gitId":"cayennegoh"},"content":" Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-07"},{"lineNumber":14,"author":{"gitId":"cayennegoh"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":15,"author":{"gitId":"cayennegoh"},"content":" line \u003d in.nextLine();","lastModifiedDate":"2024-02-07"},{"lineNumber":16,"author":{"gitId":"cayennegoh"},"content":" if (line.equals(\"bye\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":17,"author":{"gitId":"cayennegoh"},"content":" return;","lastModifiedDate":"2024-02-07"},{"lineNumber":18,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":19,"author":{"gitId":"cayennegoh"},"content":" String[] array;","lastModifiedDate":"2024-02-08"},{"lineNumber":20,"author":{"gitId":"cayennegoh"},"content":" Task t \u003d new Task(line);","lastModifiedDate":"2024-02-08"},{"lineNumber":21,"author":{"gitId":"cayennegoh"},"content":" array \u003d line.split(\" \");","lastModifiedDate":"2024-02-08"},{"lineNumber":22,"author":{"gitId":"cayennegoh"},"content":" if (array[0].startsWith(\"mark\")) {","lastModifiedDate":"2024-02-08"},{"lineNumber":23,"author":{"gitId":"cayennegoh"},"content":" list[Integer.parseInt(array[1]) - 1].setDone();","lastModifiedDate":"2024-02-08"},{"lineNumber":24,"author":{"gitId":"cayennegoh"},"content":" System.out.print(\"[\" + list[Integer.parseInt(array[1]) - 1].getStatusIcon() + \"] \" + list[Integer.parseInt(array[1]) -1].taskDescription());","lastModifiedDate":"2024-02-08"},{"lineNumber":25,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":26,"author":{"gitId":"cayennegoh"},"content":" else if (array[0].startsWith(\"unmark\")) {","lastModifiedDate":"2024-02-08"},{"lineNumber":27,"author":{"gitId":"cayennegoh"},"content":" list[Integer.parseInt(array[1]) - 1].setNotDone();","lastModifiedDate":"2024-02-08"},{"lineNumber":28,"author":{"gitId":"cayennegoh"},"content":" System.out.print(\"[\" + list[Integer.parseInt(array[1]) -1].getStatusIcon() + \"]\" + list[Integer.parseInt(array[1]) -1 ].taskDescription());","lastModifiedDate":"2024-02-08"},{"lineNumber":29,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":30,"author":{"gitId":"cayennegoh"},"content":" else if (line.equals(\"list\")) {","lastModifiedDate":"2024-02-08"},{"lineNumber":31,"author":{"gitId":"cayennegoh"},"content":" for (i \u003d 0; i \u003c n; i++) {","lastModifiedDate":"2024-02-07"},{"lineNumber":32,"author":{"gitId":"cayennegoh"},"content":" System.out.println((i + 1) + \".\" + \"[\" + list[i].getStatusIcon() + \"]\" + list[i].taskDescription());","lastModifiedDate":"2024-02-08"},{"lineNumber":33,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":34,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":35,"author":{"gitId":"cayennegoh"},"content":" else{","lastModifiedDate":"2024-02-08"},{"lineNumber":36,"author":{"gitId":"cayennegoh"},"content":" list[i] \u003d new Task(line);","lastModifiedDate":"2024-02-08"},{"lineNumber":37,"author":{"gitId":"cayennegoh"},"content":" System.out.println(\"added: \" + line);","lastModifiedDate":"2024-02-07"},{"lineNumber":38,"author":{"gitId":"cayennegoh"},"content":" i++;","lastModifiedDate":"2024-02-07"},{"lineNumber":39,"author":{"gitId":"cayennegoh"},"content":" n++;","lastModifiedDate":"2024-02-07"},{"lineNumber":40,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":41,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":42,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-01"},{"lineNumber":43,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-01"}],"authorContributionMap":{"cayennegoh":43}}] +[{"path":"Duke.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"cayennegoh"},"content":"public class Duke {","lastModifiedDate":"2024-01-30"},{"lineNumber":2,"author":{"gitId":"cayennegoh"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-01-30"},{"lineNumber":3,"author":{"gitId":"cayennegoh"},"content":" System.out.println(\"Hello from avocado\");","lastModifiedDate":"2024-01-30"},{"lineNumber":4,"author":{"gitId":"cayennegoh"},"content":" System.out.println(\"How can I help you ?\");","lastModifiedDate":"2024-01-30"},{"lineNumber":5,"author":{"gitId":"cayennegoh"},"content":" System.out.println(\"See you!\");","lastModifiedDate":"2024-01-30"},{"lineNumber":6,"author":{"gitId":"cayennegoh"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":7,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":8,"author":{"gitId":"cayennegoh"},"content":"}","lastModifiedDate":"2024-01-30"},{"lineNumber":9,"author":{"gitId":"cayennegoh"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":10,"author":{"gitId":"cayennegoh"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":11,"author":{"gitId":"cayennegoh"},"content":"","lastModifiedDate":"2024-01-30"}],"authorContributionMap":{"cayennegoh":11}},{"path":"src/main/java/Avocado - Copy (31).java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"cayennegoh"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-06"},{"lineNumber":2,"author":{"gitId":"cayennegoh"},"content":"public class Avocado {","lastModifiedDate":"2024-02-06"},{"lineNumber":3,"author":{"gitId":"cayennegoh"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-02-06"},{"lineNumber":4,"author":{"gitId":"cayennegoh"},"content":" System.out.println(\"Hello from avocado\");","lastModifiedDate":"2024-02-06"},{"lineNumber":5,"author":{"gitId":"cayennegoh"},"content":" System.out.println(\"How can I help you ?\");","lastModifiedDate":"2024-02-06"},{"lineNumber":6,"author":{"gitId":"cayennegoh"},"content":" System.out.println(\"See you!\");","lastModifiedDate":"2024-02-06"},{"lineNumber":7,"author":{"gitId":"cayennegoh"},"content":" while (true) {","lastModifiedDate":"2024-02-06"},{"lineNumber":8,"author":{"gitId":"cayennegoh"},"content":" String line;","lastModifiedDate":"2024-02-06"},{"lineNumber":9,"author":{"gitId":"cayennegoh"},"content":" Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-06"},{"lineNumber":10,"author":{"gitId":"cayennegoh"},"content":" line \u003d in.nextLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":11,"author":{"gitId":"cayennegoh"},"content":" if (line.equals(\"bye\")) {","lastModifiedDate":"2024-02-06"},{"lineNumber":12,"author":{"gitId":"cayennegoh"},"content":" return;","lastModifiedDate":"2024-02-06"},{"lineNumber":13,"author":{"gitId":"cayennegoh"},"content":" } else {","lastModifiedDate":"2024-02-06"},{"lineNumber":14,"author":{"gitId":"cayennegoh"},"content":" System.out.println(line);","lastModifiedDate":"2024-02-06"},{"lineNumber":15,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":16,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":17,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":18,"author":{"gitId":"cayennegoh"},"content":"}","lastModifiedDate":"2024-02-06"}],"authorContributionMap":{"cayennegoh":18}},{"path":"src/main/java/Avocado.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"cayennegoh"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"cayennegoh"},"content":"public class Avocado {","lastModifiedDate":"2024-02-01"},{"lineNumber":3,"author":{"gitId":"cayennegoh"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-02-01"},{"lineNumber":4,"author":{"gitId":"cayennegoh"},"content":" System.out.println(\"Hello from avocado\");","lastModifiedDate":"2024-02-01"},{"lineNumber":5,"author":{"gitId":"cayennegoh"},"content":" System.out.println(\"How can I help you ?\");","lastModifiedDate":"2024-02-01"},{"lineNumber":6,"author":{"gitId":"cayennegoh"},"content":" System.out.println(\"See you!\");","lastModifiedDate":"2024-02-01"},{"lineNumber":7,"author":{"gitId":"cayennegoh"},"content":" Task[] list \u003d new Task[100];","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"cayennegoh"},"content":" int i \u003d 0;","lastModifiedDate":"2024-02-07"},{"lineNumber":9,"author":{"gitId":"cayennegoh"},"content":" int n \u003d 0;","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"cayennegoh"},"content":" while (true) {","lastModifiedDate":"2024-02-07"},{"lineNumber":11,"author":{"gitId":"cayennegoh"},"content":" String line;","lastModifiedDate":"2024-02-07"},{"lineNumber":12,"author":{"gitId":"cayennegoh"},"content":" Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-07"},{"lineNumber":13,"author":{"gitId":"cayennegoh"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":14,"author":{"gitId":"cayennegoh"},"content":" line \u003d in.nextLine();","lastModifiedDate":"2024-02-07"},{"lineNumber":15,"author":{"gitId":"cayennegoh"},"content":" if (line.equals(\"bye\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":16,"author":{"gitId":"cayennegoh"},"content":" return;","lastModifiedDate":"2024-02-07"},{"lineNumber":17,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":18,"author":{"gitId":"cayennegoh"},"content":" String[] array;","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"cayennegoh"},"content":" Task t \u003d new Task(line);","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"cayennegoh"},"content":" array \u003d line.split(\" \");","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"cayennegoh"},"content":" if (array[0].startsWith(\"mark\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"cayennegoh"},"content":" list[Integer.parseInt(array[1]) - 1].setDone();","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"cayennegoh"},"content":" System.out.print(\"[\" + list[Integer.parseInt(array[1]) - 1].getStatusIcon() + \"] \" + list[Integer.parseInt(array[1]) -1].taskDescription());","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"cayennegoh"},"content":" else if (array[0].startsWith(\"unmark\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"cayennegoh"},"content":" list[Integer.parseInt(array[1]) - 1].setNotDone();","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"cayennegoh"},"content":" System.out.print(\"[\" + list[Integer.parseInt(array[1]) -1].getStatusIcon() + \"]\" + list[Integer.parseInt(array[1]) -1 ].taskDescription());","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"cayennegoh"},"content":" else if (line.equals(\"list\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"cayennegoh"},"content":" for (i \u003d 0; i \u003c n; i++) {","lastModifiedDate":"2024-02-07"},{"lineNumber":31,"author":{"gitId":"cayennegoh"},"content":" System.out.println((i + 1) + \".\" + \"[\" + list[i].getStatusIcon() + \"]\" + list[i].taskDescription());","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":34,"author":{"gitId":"cayennegoh"},"content":" else{","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"cayennegoh"},"content":" list[i] \u003d new Task(line);","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"cayennegoh"},"content":" System.out.println(\"added: \" + line);","lastModifiedDate":"2024-02-07"},{"lineNumber":37,"author":{"gitId":"cayennegoh"},"content":" i++;","lastModifiedDate":"2024-02-07"},{"lineNumber":38,"author":{"gitId":"cayennegoh"},"content":" n++;","lastModifiedDate":"2024-02-07"},{"lineNumber":39,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":40,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":41,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-01"},{"lineNumber":42,"author":{"gitId":"cayennegoh"},"content":"}","lastModifiedDate":"2024-02-01"}],"authorContributionMap":{"cayennegoh":42}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"cayennegoh"},"content":"public class Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"cayennegoh"},"content":" protected String description;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"cayennegoh"},"content":" protected boolean isDone;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"cayennegoh"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"cayennegoh"},"content":" public Task(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"cayennegoh"},"content":" this.description \u003d description;","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"cayennegoh"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"cayennegoh"},"content":"public String taskDescription()","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"cayennegoh"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"cayennegoh"},"content":"{","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"cayennegoh"},"content":" return this.description;","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"cayennegoh"},"content":" public String getStatusIcon() {","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"cayennegoh"},"content":" return (isDone ? \"X\" : \" \"); // mark done task with X","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"cayennegoh"},"content":" public Boolean changeStatus() {","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"cayennegoh"},"content":" return this.isDone;","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"cayennegoh"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"cayennegoh"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"cayennegoh"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"cayennegoh"},"content":"public void setDone() {","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"cayennegoh"},"content":" this.isDone \u003d true;","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"cayennegoh"},"content":"}","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"cayennegoh"},"content":" public void setNotDone() {","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"cayennegoh"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"cayennegoh"},"content":" } //...","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"cayennegoh"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"cayennegoh":28}}] diff --git a/cayennegoh_ip_master/commits.json b/cayennegoh_ip_master/commits.json index b34fa1ad..02698458 100644 --- a/cayennegoh_ip_master/commits.json +++ b/cayennegoh_ip_master/commits.json @@ -1 +1 @@ -{"authorDailyContributionsMap":{"cayennegoh":[{"date":"2024-01-30","commitResults":[{"hash":"707945145c2adfdc43e6344dce27cc6aded0c424","isMergeCommit":false,"messageTitle":"add level 0","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":11,"deletions":0}}}]},{"date":"2024-02-01","commitResults":[{"hash":"9d0e2b5083e40065e2a596c48fcbe9a35671c319","isMergeCommit":false,"messageTitle":"Level 0","messageBody":"","tags":["Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":7,"deletions":0}}}]},{"date":"2024-02-06","commitResults":[{"hash":"e6dc4ce6a1c6438421cb6312ee9425cf654f2b38","isMergeCommit":false,"messageTitle":"Level 1","messageBody":"","tags":["Level-2","Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":18,"deletions":0}}}]},{"date":"2024-02-07","commitResults":[{"hash":"f35ab465df6aa6765510907ff60003d543a634a3","isMergeCommit":false,"messageTitle":"Level-2","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":25,"deletions":1}}}]},{"date":"2024-02-08","commitResults":[{"hash":"8b324b81228112040e1fb1ef520f443cde271310","isMergeCommit":false,"messageTitle":"Level 3","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":22,"deletions":10}}}]}]},"authorFileTypeContributionMap":{"cayennegoh":{"java":72,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"cayennegoh":84.43991},"authorDisplayNameMap":{"cayennegoh":"CS2113-W13-4 GOH ..ENNE"}} +{"authorDailyContributionsMap":{"cayennegoh":[{"date":"2024-01-30","commitResults":[{"hash":"707945145c2adfdc43e6344dce27cc6aded0c424","isMergeCommit":false,"messageTitle":"add level 0","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":11,"deletions":0}}}]},{"date":"2024-02-01","commitResults":[{"hash":"9d0e2b5083e40065e2a596c48fcbe9a35671c319","isMergeCommit":false,"messageTitle":"Level 0","messageBody":"","tags":["Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":7,"deletions":0}}}]},{"date":"2024-02-06","commitResults":[{"hash":"e6dc4ce6a1c6438421cb6312ee9425cf654f2b38","isMergeCommit":false,"messageTitle":"Level 1","messageBody":"","tags":["Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":18,"deletions":0}}}]},{"date":"2024-02-07","commitResults":[{"hash":"f35ab465df6aa6765510907ff60003d543a634a3","isMergeCommit":false,"messageTitle":"Level-2","messageBody":"","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":25,"deletions":1}}}]},{"date":"2024-02-08","commitResults":[{"hash":"8b324b81228112040e1fb1ef520f443cde271310","isMergeCommit":false,"messageTitle":"Level 3","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":22,"deletions":10}}}]},{"date":"2024-02-09","commitResults":[{"hash":"be6f1d03e0e0dd54d57196512a5364bc6cbfd9e7","isMergeCommit":false,"messageTitle":"Level3","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":28,"deletions":0}}},{"hash":"edac85c5def66b62df19d0843e36c9fabb824e1d","isMergeCommit":false,"messageTitle":"Revert \"Level 3\"","messageBody":"This reverts commit 7861acc258a16c3e5b870d8752f17b21e9dd4fc3.\n","fileTypesAndContributionMap":{"java":{"insertions":10,"deletions":21}}},{"hash":"093c0b9d1b0b6335845395a257f96b5ed06b4d91","isMergeCommit":false,"messageTitle":"Revert \"no message\"","messageBody":"This reverts commit baa8a27ffedc314e6a1f2765660e69e66452e4cc.\n","fileTypesAndContributionMap":{"java":{"insertions":0,"deletions":28}}},{"hash":"e32f8b47a6955efb2105ee65276ef6666f3b1eab","isMergeCommit":false,"messageTitle":"Revert \"Level 3\"","messageBody":"This reverts commit 8b324b81228112040e1fb1ef520f443cde271310.\n","fileTypesAndContributionMap":{"java":{"insertions":0,"deletions":1}}},{"hash":"0e843e2da5d23accacccf99ee7c1a63b34db9b56","isMergeCommit":false,"messageTitle":"Level 3","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":46,"deletions":6}}},{"hash":"98f8e2cd4d76285aff9ccb6b5df160f48a78c205","isMergeCommit":false,"messageTitle":"Revert \"Level 3\"","messageBody":"This reverts commit 0e843e2da5d23accacccf99ee7c1a63b34db9b56.\n","fileTypesAndContributionMap":{"java":{"insertions":6,"deletions":46}}},{"hash":"8ba6b56c0b2785f115584dac0cc6c11567b51d76","isMergeCommit":false,"messageTitle":"Level 3","messageBody":"","tags":["Level-3"],"fileTypesAndContributionMap":{"java":{"insertions":45,"deletions":6}}}]}]},"authorFileTypeContributionMap":{"cayennegoh":{"java":99,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"cayennegoh":2549.1262},"authorDisplayNameMap":{"cayennegoh":"CS2113-W13-4 GOH ..ENNE"}} diff --git a/djleong01_ip_master/authorship.json b/djleong01_ip_master/authorship.json index ee489b4b..bc4c7747 100644 --- a/djleong01_ip_master/authorship.json +++ b/djleong01_ip_master/authorship.json @@ -1 +1 @@ -[{"path":"src/main/java/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"djleong01"},"content":"public class Deadline extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"djleong01"},"content":" private String time;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"djleong01"},"content":" public Deadline (String description, String time) {","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"djleong01"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"djleong01"},"content":" this.time \u003d time;","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"djleong01"},"content":" public String getTime() {","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"djleong01"},"content":" return time;","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"djleong01"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"djleong01"},"content":" public String getFullDescription() {","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"djleong01"},"content":" String output \u003d \"[D][\";","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"djleong01"},"content":" output +\u003d getIsDone() ? \"X] \" : \" ] \";","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"djleong01"},"content":" output +\u003d getTaskDescription();","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"djleong01"},"content":" output +\u003d \" (by: \" + getTime() + \")\";","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"djleong01"},"content":" return output;","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"djleong01"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"djleong01":19}},{"path":"src/main/java/Duke.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"djleong01"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-01-30"},{"lineNumber":2,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":3,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":4,"author":{"gitId":"-"},"content":"public class Duke {","lastModifiedDate":"2019-07-29"},{"lineNumber":5,"author":{"gitId":"djleong01"},"content":" private static List inputList \u003d new List();","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"-"},"content":" public static void main(String[] args) {","lastModifiedDate":"2019-07-29"},{"lineNumber":7,"author":{"gitId":"djleong01"},"content":" String name \u003d \"Brad\";","lastModifiedDate":"2024-01-23"},{"lineNumber":8,"author":{"gitId":"djleong01"},"content":" System.out.println(\"Hello I am \" + name + \".\\n\");","lastModifiedDate":"2024-01-23"},{"lineNumber":9,"author":{"gitId":"djleong01"},"content":" System.out.println(\"How can I help you today?\\n\");","lastModifiedDate":"2024-01-20"},{"lineNumber":10,"author":{"gitId":"djleong01"},"content":" Scanner userInput \u003d new Scanner(System.in);","lastModifiedDate":"2024-01-30"},{"lineNumber":11,"author":{"gitId":"djleong01"},"content":" while (true) {","lastModifiedDate":"2024-01-30"},{"lineNumber":12,"author":{"gitId":"djleong01"},"content":" String input \u003d userInput.nextLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"djleong01"},"content":" boolean canExit \u003d input.equals(\"bye\");","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"djleong01"},"content":" boolean canList \u003d input.equals(\"list\");","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"djleong01"},"content":" boolean canMark \u003d input.startsWith(\"mark\");","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"djleong01"},"content":" boolean canUnmark \u003d input.startsWith(\"unmark\");","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"djleong01"},"content":" if (canExit) {","lastModifiedDate":"2024-02-07"},{"lineNumber":18,"author":{"gitId":"djleong01"},"content":" printOutput(\"Bye. Hope to see you again soon!\");","lastModifiedDate":"2024-02-07"},{"lineNumber":19,"author":{"gitId":"djleong01"},"content":" break;","lastModifiedDate":"2024-01-30"},{"lineNumber":20,"author":{"gitId":"djleong01"},"content":" } else if (canList) {","lastModifiedDate":"2024-02-07"},{"lineNumber":21,"author":{"gitId":"djleong01"},"content":" printOutput(\"Here are the tasks in your list:\\n\" + inputList.getList());","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"djleong01"},"content":" } else if (canMark) {","lastModifiedDate":"2024-02-07"},{"lineNumber":23,"author":{"gitId":"djleong01"},"content":" doMarkAction(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"djleong01"},"content":" } else if (canUnmark) {","lastModifiedDate":"2024-02-07"},{"lineNumber":25,"author":{"gitId":"djleong01"},"content":" doUnmarkAction(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"djleong01"},"content":" } else if (input.startsWith(\"todo\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"djleong01"},"content":" doTodoAction(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"djleong01"},"content":" } else if (input.startsWith(\"deadline\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"djleong01"},"content":" doDeadlineAction(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"djleong01"},"content":" } else if (input.startsWith(\"event\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"djleong01"},"content":" doEventAction(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"djleong01"},"content":" } else {","lastModifiedDate":"2024-02-02"},{"lineNumber":33,"author":{"gitId":"djleong01"},"content":" doTaskAction(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":35,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":36,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":37,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":38,"author":{"gitId":"djleong01"},"content":" private static void printOutput(String message) {","lastModifiedDate":"2024-02-02"},{"lineNumber":39,"author":{"gitId":"djleong01"},"content":" String separator \u003d \"____________________________________________________________\";","lastModifiedDate":"2024-01-30"},{"lineNumber":40,"author":{"gitId":"djleong01"},"content":" System.out.println(separator);","lastModifiedDate":"2024-01-30"},{"lineNumber":41,"author":{"gitId":"djleong01"},"content":" System.out.println(message);","lastModifiedDate":"2024-01-30"},{"lineNumber":42,"author":{"gitId":"djleong01"},"content":" System.out.println(separator);","lastModifiedDate":"2024-02-02"},{"lineNumber":43,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":44,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":45,"author":{"gitId":"djleong01"},"content":" private static void doMarkAction(String input) {","lastModifiedDate":"2024-02-09"},{"lineNumber":46,"author":{"gitId":"djleong01"},"content":" int taskNum \u003d Integer.parseInt(input.split(\" \")[1]);","lastModifiedDate":"2024-02-09"},{"lineNumber":47,"author":{"gitId":"djleong01"},"content":" if (taskNum \u003e inputList.listSize()) {","lastModifiedDate":"2024-02-09"},{"lineNumber":48,"author":{"gitId":"djleong01"},"content":" System.out.println(\"Exceeded existing list size of: \" + inputList.listSize() + \". Please enter a valid number\" + \"\\n\");","lastModifiedDate":"2024-02-09"},{"lineNumber":49,"author":{"gitId":"djleong01"},"content":" } else {","lastModifiedDate":"2024-02-09"},{"lineNumber":50,"author":{"gitId":"djleong01"},"content":" inputList.markAsDone(taskNum, true);","lastModifiedDate":"2024-02-09"},{"lineNumber":51,"author":{"gitId":"djleong01"},"content":" String message \u003d \"Nice! I\u0027ve marked this task as done: \\n\" + inputList.getTask(taskNum);","lastModifiedDate":"2024-02-09"},{"lineNumber":52,"author":{"gitId":"djleong01"},"content":" printOutput(message);","lastModifiedDate":"2024-02-09"},{"lineNumber":53,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":54,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"djleong01"},"content":" private static void doUnmarkAction(String input) {","lastModifiedDate":"2024-02-09"},{"lineNumber":57,"author":{"gitId":"djleong01"},"content":" int itemNo \u003d Integer.parseInt(input.split(\" \")[1]);","lastModifiedDate":"2024-02-09"},{"lineNumber":58,"author":{"gitId":"djleong01"},"content":" inputList.markAsDone(itemNo, false);","lastModifiedDate":"2024-02-09"},{"lineNumber":59,"author":{"gitId":"djleong01"},"content":" String message \u003d \"OK, I\u0027ve marked this task as not done yet: \\n\" + inputList.getTask(itemNo);","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"djleong01"},"content":" printOutput(message);","lastModifiedDate":"2024-02-09"},{"lineNumber":61,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":62,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":63,"author":{"gitId":"djleong01"},"content":" private static void doTodoAction(String input) {","lastModifiedDate":"2024-02-09"},{"lineNumber":64,"author":{"gitId":"djleong01"},"content":" String description \u003d input.substring(\"todo \".length());","lastModifiedDate":"2024-02-09"},{"lineNumber":65,"author":{"gitId":"djleong01"},"content":" inputList.addToList(description, TaskType.TODO);","lastModifiedDate":"2024-02-09"},{"lineNumber":66,"author":{"gitId":"djleong01"},"content":" int size \u003d inputList.listSize();","lastModifiedDate":"2024-02-09"},{"lineNumber":67,"author":{"gitId":"djleong01"},"content":" String message \u003d \"Got it. I\u0027ve added this task:\\n\" + inputList.getTask(size)","lastModifiedDate":"2024-02-09"},{"lineNumber":68,"author":{"gitId":"djleong01"},"content":" + \"\\n Now you have \" + size + \" tasks in the list.\";","lastModifiedDate":"2024-02-09"},{"lineNumber":69,"author":{"gitId":"djleong01"},"content":" printOutput(message);","lastModifiedDate":"2024-02-09"},{"lineNumber":70,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":71,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":72,"author":{"gitId":"djleong01"},"content":" private static void doDeadlineAction(String input) {","lastModifiedDate":"2024-02-09"},{"lineNumber":73,"author":{"gitId":"djleong01"},"content":" String description \u003d input.substring(\"deadline \".length());","lastModifiedDate":"2024-02-09"},{"lineNumber":74,"author":{"gitId":"djleong01"},"content":" inputList.addToList(description, TaskType.DEADLINE);","lastModifiedDate":"2024-02-09"},{"lineNumber":75,"author":{"gitId":"djleong01"},"content":" int size \u003d inputList.listSize();","lastModifiedDate":"2024-02-09"},{"lineNumber":76,"author":{"gitId":"djleong01"},"content":" String message \u003d \"Got it. I\u0027ve added this task:\\n\" + inputList.getTask(size)","lastModifiedDate":"2024-02-09"},{"lineNumber":77,"author":{"gitId":"djleong01"},"content":" + \"\\n Now you have \" + size + \" tasks in the list.\";","lastModifiedDate":"2024-02-09"},{"lineNumber":78,"author":{"gitId":"djleong01"},"content":" printOutput(message);","lastModifiedDate":"2024-02-09"},{"lineNumber":79,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":80,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":81,"author":{"gitId":"djleong01"},"content":" private static void doEventAction(String input) {","lastModifiedDate":"2024-02-09"},{"lineNumber":82,"author":{"gitId":"djleong01"},"content":" String description \u003d input.substring(\"event \".length());","lastModifiedDate":"2024-02-09"},{"lineNumber":83,"author":{"gitId":"djleong01"},"content":" inputList.addToList(description, TaskType.EVENT);","lastModifiedDate":"2024-02-09"},{"lineNumber":84,"author":{"gitId":"djleong01"},"content":" int size \u003d inputList.listSize();","lastModifiedDate":"2024-02-09"},{"lineNumber":85,"author":{"gitId":"djleong01"},"content":" String message \u003d \"Got it. I\u0027ve added this task:\\n\" + inputList.getTask(size)","lastModifiedDate":"2024-02-09"},{"lineNumber":86,"author":{"gitId":"djleong01"},"content":" + \"\\n Now you have \" + size + \" tasks in the list.\";","lastModifiedDate":"2024-02-09"},{"lineNumber":87,"author":{"gitId":"djleong01"},"content":" printOutput(message);","lastModifiedDate":"2024-02-09"},{"lineNumber":88,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":89,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":90,"author":{"gitId":"djleong01"},"content":" private static void doTaskAction(String input) {","lastModifiedDate":"2024-02-09"},{"lineNumber":91,"author":{"gitId":"djleong01"},"content":" inputList.addToList(input, TaskType.OTHER);","lastModifiedDate":"2024-02-09"},{"lineNumber":92,"author":{"gitId":"djleong01"},"content":" int size \u003d inputList.listSize();","lastModifiedDate":"2024-02-09"},{"lineNumber":93,"author":{"gitId":"djleong01"},"content":" String message \u003d \"Got it. I\u0027ve added this task:\\n\" + inputList.getTask(size)","lastModifiedDate":"2024-02-09"},{"lineNumber":94,"author":{"gitId":"djleong01"},"content":" + \"\\n Now you have \" + size + \" tasks in the list.\";","lastModifiedDate":"2024-02-09"},{"lineNumber":95,"author":{"gitId":"djleong01"},"content":" printOutput(message);","lastModifiedDate":"2024-02-09"},{"lineNumber":96,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":97,"author":{"gitId":"-"},"content":"}","lastModifiedDate":"2019-07-29"}],"authorContributionMap":{"djleong01":94,"-":3}},{"path":"src/main/java/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"djleong01"},"content":"public class Event extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"djleong01"},"content":" private String time;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"djleong01"},"content":" public Event (String description, String time) {","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"djleong01"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"djleong01"},"content":" this.time \u003d time;","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"djleong01"},"content":" public String getTime() {","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"djleong01"},"content":" return time;","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"djleong01"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"djleong01"},"content":" public String getFullDescription() {","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"djleong01"},"content":" String output \u003d \"[E][\";","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"djleong01"},"content":" output +\u003d getIsDone() ? \"X] \" : \" ] \";","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"djleong01"},"content":" output +\u003d getTaskDescription();","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"djleong01"},"content":" output +\u003d \" (from: \" + getTime() + \")\";","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"djleong01"},"content":" return output;","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"djleong01"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"djleong01":21}},{"path":"src/main/java/List.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"djleong01"},"content":"import java.util.ArrayList;","lastModifiedDate":"2024-02-02"},{"lineNumber":2,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":3,"author":{"gitId":"djleong01"},"content":"public class List {","lastModifiedDate":"2024-02-02"},{"lineNumber":4,"author":{"gitId":"djleong01"},"content":" private ArrayList\u003cTask\u003e inputList \u003d new ArrayList\u003cTask\u003e();","lastModifiedDate":"2024-02-02"},{"lineNumber":5,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":6,"author":{"gitId":"djleong01"},"content":" public void addToList(String input, TaskType type) {","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"djleong01"},"content":" Task newTask;","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"djleong01"},"content":" if (type \u003d\u003d TaskType.EVENT) {","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"djleong01"},"content":" int startTimeIndex \u003d input.indexOf(\"/from\");","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"djleong01"},"content":" String description \u003d input.substring(0, startTimeIndex).strip();","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"djleong01"},"content":" String startTime \u003d input.substring(startTimeIndex + \"/from \".length()).strip();","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"djleong01"},"content":" startTime \u003d startTime.replace(\"/\", \"\");","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"djleong01"},"content":" newTask \u003d new Event(description, startTime);","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"djleong01"},"content":" } else if (type \u003d\u003d TaskType.DEADLINE) {","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"djleong01"},"content":" int timeIndex \u003d input.indexOf(\"/by\");","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"djleong01"},"content":" String description \u003d input.substring(0, timeIndex).strip();","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"djleong01"},"content":" String time \u003d input.substring(timeIndex + \"/by \".length()).strip();","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"djleong01"},"content":" newTask \u003d new Deadline(description, time);","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"djleong01"},"content":" } else if (type \u003d\u003d TaskType.TODO) {","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"djleong01"},"content":" newTask \u003d new Todo(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"djleong01"},"content":" } else {","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"djleong01"},"content":" newTask \u003d new Task(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"djleong01"},"content":" inputList.add(newTask);","lastModifiedDate":"2024-02-02"},{"lineNumber":25,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":27,"author":{"gitId":"djleong01"},"content":" public String getList() {","lastModifiedDate":"2024-02-07"},{"lineNumber":28,"author":{"gitId":"djleong01"},"content":" String output \u003d \"\";","lastModifiedDate":"2024-02-02"},{"lineNumber":29,"author":{"gitId":"djleong01"},"content":" for (int i \u003d 1; i \u003c\u003d inputList.size(); i++) {","lastModifiedDate":"2024-02-07"},{"lineNumber":30,"author":{"gitId":"djleong01"},"content":" output +\u003d i + \". \" + getTask(i) + \"\\n\";","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":32,"author":{"gitId":"djleong01"},"content":" return output;","lastModifiedDate":"2024-02-02"},{"lineNumber":33,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":34,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":35,"author":{"gitId":"djleong01"},"content":" public String getTask(int n) {","lastModifiedDate":"2024-02-07"},{"lineNumber":36,"author":{"gitId":"djleong01"},"content":" String output \u003d inputList.get(n - 1).getFullDescription();","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"djleong01"},"content":" return output;","lastModifiedDate":"2024-02-02"},{"lineNumber":38,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":39,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":40,"author":{"gitId":"djleong01"},"content":" public void markAsDone(int n, boolean isDone) {","lastModifiedDate":"2024-02-02"},{"lineNumber":41,"author":{"gitId":"djleong01"},"content":" inputList.get(n - 1).setIsDone(isDone);","lastModifiedDate":"2024-02-07"},{"lineNumber":42,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":43,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":44,"author":{"gitId":"djleong01"},"content":" public int listSize() {","lastModifiedDate":"2024-02-02"},{"lineNumber":45,"author":{"gitId":"djleong01"},"content":" return inputList.size();","lastModifiedDate":"2024-02-02"},{"lineNumber":46,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":47,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":48,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":49,"author":{"gitId":"djleong01"},"content":"}","lastModifiedDate":"2024-02-02"}],"authorContributionMap":{"djleong01":49}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"djleong01"},"content":"public class Task {","lastModifiedDate":"2024-02-02"},{"lineNumber":2,"author":{"gitId":"djleong01"},"content":" protected String description;","lastModifiedDate":"2024-02-02"},{"lineNumber":3,"author":{"gitId":"djleong01"},"content":" protected boolean isDone;","lastModifiedDate":"2024-02-02"},{"lineNumber":4,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":5,"author":{"gitId":"djleong01"},"content":" public Task(String description) {","lastModifiedDate":"2024-02-02"},{"lineNumber":6,"author":{"gitId":"djleong01"},"content":" this.description \u003d description;","lastModifiedDate":"2024-02-02"},{"lineNumber":7,"author":{"gitId":"djleong01"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-02"},{"lineNumber":8,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":9,"author":{"gitId":"djleong01"},"content":" public void setIsDone(boolean isDone) {","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"djleong01"},"content":" this.isDone \u003d isDone;","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":12,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":13,"author":{"gitId":"djleong01"},"content":" public boolean getIsDone() {","lastModifiedDate":"2024-02-02"},{"lineNumber":14,"author":{"gitId":"djleong01"},"content":" return isDone;","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":16,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":17,"author":{"gitId":"djleong01"},"content":" public String getTaskDescription() {","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"djleong01"},"content":" return description;","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"djleong01"},"content":" public String getFullDescription() {","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"djleong01"},"content":" String output \u003d \"[ ][\";","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"djleong01"},"content":" output +\u003d (getIsDone() ? \"X] \" : \" ] \");","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"djleong01"},"content":" output +\u003d getTaskDescription();","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"djleong01"},"content":" return output;","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":27,"author":{"gitId":"djleong01"},"content":"}","lastModifiedDate":"2024-02-02"}],"authorContributionMap":{"djleong01":27}},{"path":"src/main/java/TaskType.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"djleong01"},"content":"public enum TaskType {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"djleong01"},"content":" TODO, DEADLINE, EVENT, OTHER","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"djleong01"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"djleong01":3}},{"path":"src/main/java/Todo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"djleong01"},"content":"public class Todo extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"djleong01"},"content":" public Todo (String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"djleong01"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"djleong01"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"djleong01"},"content":" public String getFullDescription() {","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"djleong01"},"content":" String output \u003d \"[T][\";","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"djleong01"},"content":" output +\u003d getIsDone() ? \"X] \" : \" ] \";","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"djleong01"},"content":" output +\u003d getTaskDescription();","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"djleong01"},"content":" return output;","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"djleong01"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"djleong01":13}}] +[{"path":"src/main/java/Brad.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"djleong01"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-01-30"},{"lineNumber":2,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":3,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":4,"author":{"gitId":"djleong01"},"content":"public class Brad {","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"djleong01"},"content":" private static List inputList \u003d new List();","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"-"},"content":" public static void main(String[] args) {","lastModifiedDate":"2019-07-29"},{"lineNumber":7,"author":{"gitId":"djleong01"},"content":" greetUser();","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"djleong01"},"content":" Scanner userInput \u003d new Scanner(System.in);","lastModifiedDate":"2024-01-30"},{"lineNumber":9,"author":{"gitId":"djleong01"},"content":" while (true) {","lastModifiedDate":"2024-01-30"},{"lineNumber":10,"author":{"gitId":"djleong01"},"content":" String input \u003d userInput.nextLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"djleong01"},"content":" boolean canExit \u003d input.equals(\"bye\");","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"djleong01"},"content":" boolean canList \u003d input.equals(\"list\");","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"djleong01"},"content":" boolean canMark \u003d input.startsWith(\"mark\");","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"djleong01"},"content":" boolean canUnmark \u003d input.startsWith(\"unmark\");","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"djleong01"},"content":" if (canExit) {","lastModifiedDate":"2024-02-07"},{"lineNumber":16,"author":{"gitId":"djleong01"},"content":" printOutput(\"Bye. Hope to see you again soon!\");","lastModifiedDate":"2024-02-07"},{"lineNumber":17,"author":{"gitId":"djleong01"},"content":" break;","lastModifiedDate":"2024-01-30"},{"lineNumber":18,"author":{"gitId":"djleong01"},"content":" } else if (canList) {","lastModifiedDate":"2024-02-07"},{"lineNumber":19,"author":{"gitId":"djleong01"},"content":" printOutput(\"Here are the tasks in your list:\\n\" + inputList.getList());","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"djleong01"},"content":" } else if (canMark) {","lastModifiedDate":"2024-02-07"},{"lineNumber":21,"author":{"gitId":"djleong01"},"content":" doMarkAction(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"djleong01"},"content":" } else if (canUnmark) {","lastModifiedDate":"2024-02-07"},{"lineNumber":23,"author":{"gitId":"djleong01"},"content":" doUnmarkAction(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"djleong01"},"content":" } else if (input.startsWith(\"todo\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"djleong01"},"content":" doTodoAction(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"djleong01"},"content":" } else if (input.startsWith(\"deadline\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"djleong01"},"content":" doDeadlineAction(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"djleong01"},"content":" } else if (input.startsWith(\"event\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"djleong01"},"content":" doEventAction(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"djleong01"},"content":" } else {","lastModifiedDate":"2024-02-02"},{"lineNumber":31,"author":{"gitId":"djleong01"},"content":" doTaskAction(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":33,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":34,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":35,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":36,"author":{"gitId":"djleong01"},"content":" private static void greetUser() {","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"djleong01"},"content":" final String name \u003d \"Brad\";","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"djleong01"},"content":" System.out.println(\"Hello I am \" + name + \".\\n\");","lastModifiedDate":"2024-02-09"},{"lineNumber":39,"author":{"gitId":"djleong01"},"content":" System.out.println(\"How can I help you today?\\n\");","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":42,"author":{"gitId":"djleong01"},"content":" private static void printOutput(String message) {","lastModifiedDate":"2024-02-02"},{"lineNumber":43,"author":{"gitId":"djleong01"},"content":" final String separator \u003d \"__________________________________________________________\";","lastModifiedDate":"2024-02-09"},{"lineNumber":44,"author":{"gitId":"djleong01"},"content":" System.out.println(separator);","lastModifiedDate":"2024-01-30"},{"lineNumber":45,"author":{"gitId":"djleong01"},"content":" System.out.println(message);","lastModifiedDate":"2024-01-30"},{"lineNumber":46,"author":{"gitId":"djleong01"},"content":" System.out.println(separator);","lastModifiedDate":"2024-02-02"},{"lineNumber":47,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":48,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":49,"author":{"gitId":"djleong01"},"content":" private static void doMarkAction(String input) {","lastModifiedDate":"2024-02-09"},{"lineNumber":50,"author":{"gitId":"djleong01"},"content":" try {","lastModifiedDate":"2024-02-09"},{"lineNumber":51,"author":{"gitId":"djleong01"},"content":" int taskNumber \u003d Integer.parseInt(input.split(\" \")[1]);","lastModifiedDate":"2024-02-09"},{"lineNumber":52,"author":{"gitId":"djleong01"},"content":" inputList.markAsDone(taskNumber, true);","lastModifiedDate":"2024-02-09"},{"lineNumber":53,"author":{"gitId":"djleong01"},"content":" String message \u003d \"Nice! I\u0027ve marked this task as done: \\n\" + inputList.getTask(taskNumber);","lastModifiedDate":"2024-02-09"},{"lineNumber":54,"author":{"gitId":"djleong01"},"content":" printOutput(message);","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"djleong01"},"content":" } catch (Exception e) {","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"djleong01"},"content":" System.out.println(\"\u003e:( Exceeded existing list size of: \" + inputList.listSize() +","lastModifiedDate":"2024-02-09"},{"lineNumber":57,"author":{"gitId":"djleong01"},"content":" \"\\nPlease enter a valid number\" + \"\\n\");","lastModifiedDate":"2024-02-09"},{"lineNumber":58,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":59,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":61,"author":{"gitId":"djleong01"},"content":" private static void doUnmarkAction(String input) {","lastModifiedDate":"2024-02-09"},{"lineNumber":62,"author":{"gitId":"djleong01"},"content":" try {","lastModifiedDate":"2024-02-09"},{"lineNumber":63,"author":{"gitId":"djleong01"},"content":" int taskNumber \u003d Integer.parseInt(input.split(\" \")[1]);","lastModifiedDate":"2024-02-09"},{"lineNumber":64,"author":{"gitId":"djleong01"},"content":" inputList.markAsDone(taskNumber, false);","lastModifiedDate":"2024-02-09"},{"lineNumber":65,"author":{"gitId":"djleong01"},"content":" String message \u003d \"OK, I\u0027ve marked this task as not done yet: \\n\" + inputList.getTask(taskNumber);","lastModifiedDate":"2024-02-09"},{"lineNumber":66,"author":{"gitId":"djleong01"},"content":" printOutput(message);","lastModifiedDate":"2024-02-09"},{"lineNumber":67,"author":{"gitId":"djleong01"},"content":" } catch (Exception e) {","lastModifiedDate":"2024-02-09"},{"lineNumber":68,"author":{"gitId":"djleong01"},"content":" System.out.println(\"\u003e:( Exceeded existing list size of: \" + inputList.listSize() +","lastModifiedDate":"2024-02-09"},{"lineNumber":69,"author":{"gitId":"djleong01"},"content":" \"\\nPlease enter a valid number.\" + \"\\n\");","lastModifiedDate":"2024-02-09"},{"lineNumber":70,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":71,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":72,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":73,"author":{"gitId":"djleong01"},"content":" private static void doTodoAction(String input) {","lastModifiedDate":"2024-02-09"},{"lineNumber":74,"author":{"gitId":"djleong01"},"content":" String description \u003d input.substring(\"todo \".length());","lastModifiedDate":"2024-02-09"},{"lineNumber":75,"author":{"gitId":"djleong01"},"content":" inputList.addToList(description, TaskType.TODO);","lastModifiedDate":"2024-02-09"},{"lineNumber":76,"author":{"gitId":"djleong01"},"content":" int size \u003d inputList.listSize();","lastModifiedDate":"2024-02-09"},{"lineNumber":77,"author":{"gitId":"djleong01"},"content":" String message \u003d \"Got it. I\u0027ve added this task:\\n\" + inputList.getTask(size)","lastModifiedDate":"2024-02-09"},{"lineNumber":78,"author":{"gitId":"djleong01"},"content":" + \"\\n Now you have \" + size + \" tasks in the list.\";","lastModifiedDate":"2024-02-09"},{"lineNumber":79,"author":{"gitId":"djleong01"},"content":" printOutput(message);","lastModifiedDate":"2024-02-09"},{"lineNumber":80,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":81,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":82,"author":{"gitId":"djleong01"},"content":" private static void doDeadlineAction(String input) {","lastModifiedDate":"2024-02-09"},{"lineNumber":83,"author":{"gitId":"djleong01"},"content":" String description \u003d input.substring(\"deadline \".length());","lastModifiedDate":"2024-02-09"},{"lineNumber":84,"author":{"gitId":"djleong01"},"content":" inputList.addToList(description, TaskType.DEADLINE);","lastModifiedDate":"2024-02-09"},{"lineNumber":85,"author":{"gitId":"djleong01"},"content":" int size \u003d inputList.listSize();","lastModifiedDate":"2024-02-09"},{"lineNumber":86,"author":{"gitId":"djleong01"},"content":" String message \u003d \"Got it. I\u0027ve added this task:\\n\" + inputList.getTask(size)","lastModifiedDate":"2024-02-09"},{"lineNumber":87,"author":{"gitId":"djleong01"},"content":" + \"\\n Now you have \" + size + \" tasks in the list.\";","lastModifiedDate":"2024-02-09"},{"lineNumber":88,"author":{"gitId":"djleong01"},"content":" printOutput(message);","lastModifiedDate":"2024-02-09"},{"lineNumber":89,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":90,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":91,"author":{"gitId":"djleong01"},"content":" private static void doEventAction(String input) {","lastModifiedDate":"2024-02-09"},{"lineNumber":92,"author":{"gitId":"djleong01"},"content":" String description \u003d input.substring(\"event \".length());","lastModifiedDate":"2024-02-09"},{"lineNumber":93,"author":{"gitId":"djleong01"},"content":" inputList.addToList(description, TaskType.EVENT);","lastModifiedDate":"2024-02-09"},{"lineNumber":94,"author":{"gitId":"djleong01"},"content":" int size \u003d inputList.listSize();","lastModifiedDate":"2024-02-09"},{"lineNumber":95,"author":{"gitId":"djleong01"},"content":" String message \u003d \"Got it. I\u0027ve added this task:\\n\" + inputList.getTask(size)","lastModifiedDate":"2024-02-09"},{"lineNumber":96,"author":{"gitId":"djleong01"},"content":" + \"\\n Now you have \" + size + \" tasks in the list.\";","lastModifiedDate":"2024-02-09"},{"lineNumber":97,"author":{"gitId":"djleong01"},"content":" printOutput(message);","lastModifiedDate":"2024-02-09"},{"lineNumber":98,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":99,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":100,"author":{"gitId":"djleong01"},"content":" private static void doTaskAction(String input) {","lastModifiedDate":"2024-02-09"},{"lineNumber":101,"author":{"gitId":"djleong01"},"content":" inputList.addToList(input, TaskType.OTHER);","lastModifiedDate":"2024-02-09"},{"lineNumber":102,"author":{"gitId":"djleong01"},"content":" int size \u003d inputList.listSize();","lastModifiedDate":"2024-02-09"},{"lineNumber":103,"author":{"gitId":"djleong01"},"content":" String message \u003d \"Got it. I\u0027ve added this task:\\n\" + inputList.getTask(size)","lastModifiedDate":"2024-02-09"},{"lineNumber":104,"author":{"gitId":"djleong01"},"content":" + \"\\n Now you have \" + size + \" tasks in the list.\";","lastModifiedDate":"2024-02-09"},{"lineNumber":105,"author":{"gitId":"djleong01"},"content":" printOutput(message);","lastModifiedDate":"2024-02-09"},{"lineNumber":106,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":107,"author":{"gitId":"-"},"content":"}","lastModifiedDate":"2019-07-29"}],"authorContributionMap":{"djleong01":105,"-":2}},{"path":"src/main/java/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"djleong01"},"content":"public class Deadline extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"djleong01"},"content":" private String time;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"djleong01"},"content":" public Deadline (String description, String time) {","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"djleong01"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"djleong01"},"content":" this.time \u003d time;","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"djleong01"},"content":" public String getTime() {","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"djleong01"},"content":" return time;","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"djleong01"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"djleong01"},"content":" public String getFullDescription() {","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"djleong01"},"content":" String output \u003d \"[D][\";","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"djleong01"},"content":" output +\u003d getIsDone() ? \"X] \" : \" ] \";","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"djleong01"},"content":" output +\u003d getTaskDescription();","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"djleong01"},"content":" output +\u003d \" (by: \" + getTime() + \")\";","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"djleong01"},"content":" return output;","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"djleong01"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"djleong01":20}},{"path":"src/main/java/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"djleong01"},"content":"public class Event extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"djleong01"},"content":" private String time;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"djleong01"},"content":" public Event (String description, String time) {","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"djleong01"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"djleong01"},"content":" this.time \u003d time;","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"djleong01"},"content":" public String getTime() {","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"djleong01"},"content":" return time;","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"djleong01"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"djleong01"},"content":" public String getFullDescription() {","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"djleong01"},"content":" String output \u003d \"[E][\";","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"djleong01"},"content":" output +\u003d getIsDone() ? \"X] \" : \" ] \";","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"djleong01"},"content":" output +\u003d getTaskDescription();","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"djleong01"},"content":" output +\u003d \" (from: \" + getTime() + \")\";","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"djleong01"},"content":" return output;","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"djleong01"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"djleong01":21}},{"path":"src/main/java/List.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"djleong01"},"content":"import java.util.ArrayList;","lastModifiedDate":"2024-02-02"},{"lineNumber":2,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":3,"author":{"gitId":"djleong01"},"content":"public class List {","lastModifiedDate":"2024-02-02"},{"lineNumber":4,"author":{"gitId":"djleong01"},"content":" private ArrayList\u003cTask\u003e inputList \u003d new ArrayList\u003cTask\u003e();","lastModifiedDate":"2024-02-02"},{"lineNumber":5,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":6,"author":{"gitId":"djleong01"},"content":" public void addToList(String input, TaskType type) {","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"djleong01"},"content":" Task newTask;","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"djleong01"},"content":" if (type \u003d\u003d TaskType.EVENT) {","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"djleong01"},"content":" int timeIndex \u003d input.indexOf(\"/from\");","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"djleong01"},"content":" String description \u003d input.substring(0, timeIndex).strip();","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"djleong01"},"content":" String time \u003d input.substring(timeIndex + \"/from \".length()).strip();","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"djleong01"},"content":" time \u003d time.replace(\"/\", \"\");","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"djleong01"},"content":" newTask \u003d new Event(description, time);","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"djleong01"},"content":" } else if (type \u003d\u003d TaskType.DEADLINE) {","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"djleong01"},"content":" int timeIndex \u003d input.indexOf(\"/by\");","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"djleong01"},"content":" String description \u003d input.substring(0, timeIndex).strip();","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"djleong01"},"content":" String time \u003d input.substring(timeIndex + \"/by \".length()).strip();","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"djleong01"},"content":" newTask \u003d new Deadline(description, time);","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"djleong01"},"content":" } else if (type \u003d\u003d TaskType.TODO) {","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"djleong01"},"content":" newTask \u003d new Todo(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"djleong01"},"content":" } else {","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"djleong01"},"content":" newTask \u003d new Task(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"djleong01"},"content":" inputList.add(newTask);","lastModifiedDate":"2024-02-02"},{"lineNumber":25,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":27,"author":{"gitId":"djleong01"},"content":" public String getList() {","lastModifiedDate":"2024-02-07"},{"lineNumber":28,"author":{"gitId":"djleong01"},"content":" String output \u003d \"\";","lastModifiedDate":"2024-02-02"},{"lineNumber":29,"author":{"gitId":"djleong01"},"content":" for (int i \u003d 1; i \u003c\u003d inputList.size(); i++) {","lastModifiedDate":"2024-02-07"},{"lineNumber":30,"author":{"gitId":"djleong01"},"content":" output +\u003d i + \". \" + getTask(i) + \"\\n\";","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":32,"author":{"gitId":"djleong01"},"content":" return output;","lastModifiedDate":"2024-02-02"},{"lineNumber":33,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":34,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":35,"author":{"gitId":"djleong01"},"content":" public String getTask(int n) {","lastModifiedDate":"2024-02-07"},{"lineNumber":36,"author":{"gitId":"djleong01"},"content":" String output \u003d inputList.get(n - 1).getFullDescription();","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"djleong01"},"content":" return output;","lastModifiedDate":"2024-02-02"},{"lineNumber":38,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":39,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":40,"author":{"gitId":"djleong01"},"content":" public void markAsDone(int n, boolean isDone) {","lastModifiedDate":"2024-02-02"},{"lineNumber":41,"author":{"gitId":"djleong01"},"content":" inputList.get(n - 1).setIsDone(isDone);","lastModifiedDate":"2024-02-07"},{"lineNumber":42,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":43,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":44,"author":{"gitId":"djleong01"},"content":" public int listSize() {","lastModifiedDate":"2024-02-02"},{"lineNumber":45,"author":{"gitId":"djleong01"},"content":" return inputList.size();","lastModifiedDate":"2024-02-02"},{"lineNumber":46,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":47,"author":{"gitId":"djleong01"},"content":"}","lastModifiedDate":"2024-02-02"}],"authorContributionMap":{"djleong01":47}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"djleong01"},"content":"public class Task {","lastModifiedDate":"2024-02-02"},{"lineNumber":2,"author":{"gitId":"djleong01"},"content":" protected String description;","lastModifiedDate":"2024-02-02"},{"lineNumber":3,"author":{"gitId":"djleong01"},"content":" protected boolean isDone;","lastModifiedDate":"2024-02-02"},{"lineNumber":4,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":5,"author":{"gitId":"djleong01"},"content":" public Task(String description) {","lastModifiedDate":"2024-02-02"},{"lineNumber":6,"author":{"gitId":"djleong01"},"content":" this.description \u003d description;","lastModifiedDate":"2024-02-02"},{"lineNumber":7,"author":{"gitId":"djleong01"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-02"},{"lineNumber":8,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":9,"author":{"gitId":"djleong01"},"content":" public void setIsDone(boolean isDone) {","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"djleong01"},"content":" this.isDone \u003d isDone;","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":12,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":13,"author":{"gitId":"djleong01"},"content":" public boolean getIsDone() {","lastModifiedDate":"2024-02-02"},{"lineNumber":14,"author":{"gitId":"djleong01"},"content":" return isDone;","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":16,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":17,"author":{"gitId":"djleong01"},"content":" public String getTaskDescription() {","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"djleong01"},"content":" return description;","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"djleong01"},"content":" public String getFullDescription() {","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"djleong01"},"content":" String output \u003d \"[\";","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"djleong01"},"content":" output +\u003d (getIsDone() ? \"X] \" : \" ] \");","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"djleong01"},"content":" output +\u003d getTaskDescription();","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"djleong01"},"content":" return output;","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":27,"author":{"gitId":"djleong01"},"content":"}","lastModifiedDate":"2024-02-02"}],"authorContributionMap":{"djleong01":27}},{"path":"src/main/java/TaskType.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"djleong01"},"content":"public enum TaskType {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"djleong01"},"content":" TODO, DEADLINE, EVENT, OTHER","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"djleong01"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"djleong01":3}},{"path":"src/main/java/Todo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"djleong01"},"content":"public class Todo extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"djleong01"},"content":" public Todo (String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"djleong01"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"djleong01"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"djleong01"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"djleong01"},"content":" public String getFullDescription() {","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"djleong01"},"content":" String output \u003d \"[T][\";","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"djleong01"},"content":" output +\u003d getIsDone() ? \"X] \" : \" ] \";","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"djleong01"},"content":" output +\u003d getTaskDescription();","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"djleong01"},"content":" return output;","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"djleong01"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"djleong01"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"djleong01":13}},{"path":"text-ui-test/input.txt","fileType":"txt","lines":[{"lineNumber":1,"author":{"gitId":"djleong01"},"content":"task1","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"djleong01"},"content":"todo task2","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"djleong01"},"content":"list","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"djleong01"},"content":"mark 2","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"djleong01"},"content":"list","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"djleong01"},"content":"unmark 2","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"djleong01"},"content":"list","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"djleong01"},"content":"deadline assignment1 /by sunday","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"djleong01"},"content":"list","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"djleong01"},"content":"event party /from 2pm /to 6pm","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"djleong01"},"content":"list","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"djleong01"},"content":"mark 4","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"djleong01"},"content":"list","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"djleong01"},"content":"bye","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"djleong01":14}}] diff --git a/djleong01_ip_master/commits.json b/djleong01_ip_master/commits.json index e427a512..26d0da18 100644 --- a/djleong01_ip_master/commits.json +++ b/djleong01_ip_master/commits.json @@ -1 +1 @@ -{"authorDailyContributionsMap":{"djleong01":[{"date":"2024-01-20","commitResults":[{"hash":"966654a3644d82fe2ff3ee25509efefa1e3041d9","isMergeCommit":false,"messageTitle":"Completed Level-0","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":4,"deletions":6}}},{"hash":"984eaf7231c86570ea73f2b56e9c364f335ab380","isMergeCommit":false,"messageTitle":"Changed into correct github account to commit.","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1}}}]},{"date":"2024-01-23","commitResults":[{"hash":"d899ef1ab1ad6bb574586e4412ca3e45dc543035","isMergeCommit":false,"messageTitle":"Update Duke.java","messageBody":"","tags":["Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":3,"deletions":3}}}]},{"date":"2024-01-30","commitResults":[{"hash":"66e5c3f497afe0932bd94fb80295c3628a4528fb","isMergeCommit":false,"messageTitle":"Completed Level-1 Echo","messageBody":"","tags":["Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":25,"deletions":1}}},{"hash":"888f1f8f2a6e06d5979a5b2b1aab63f654410c07","isMergeCommit":false,"messageTitle":"Complete Level-2 Add, List","messageBody":"","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":40,"deletions":12}}}]},{"date":"2024-02-02","commitResults":[{"hash":"5d9b8146cc4a11d0edaa20f15408c83c5b238868","isMergeCommit":false,"messageTitle":"Complete Level-3 Mark as done","messageBody":"","tags":["Level-3"],"fileTypesAndContributionMap":{"java":{"insertions":84,"deletions":36}}}]},{"date":"2024-02-07","commitResults":[{"hash":"b91754d8d71c94fa47d1cd4e372aa62facf9f45b","isMergeCommit":false,"messageTitle":"Cleanup code to follow coding standards","messageBody":"","tags":["A-CodingStandard"],"fileTypesAndContributionMap":{"java":{"insertions":23,"deletions":25}}}]},{"date":"2024-02-09","commitResults":[{"hash":"1d48d74416b380352ca82b4bd1bc6ae5726d14be","isMergeCommit":false,"messageTitle":"Complete Level 4 ToDos, Events, Deadlines","messageBody":"","tags":["Level-4"],"fileTypesAndContributionMap":{"java":{"insertions":160,"deletions":37}}}]}]},"authorFileTypeContributionMap":{"djleong01":{"java":226,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"djleong01":2368.953},"authorDisplayNameMap":{"djleong01":"CS2113-T15-1 LEON.. JUN"}} +{"authorDailyContributionsMap":{"djleong01":[{"date":"2024-01-20","commitResults":[{"hash":"966654a3644d82fe2ff3ee25509efefa1e3041d9","isMergeCommit":false,"messageTitle":"Completed Level-0","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":4,"deletions":6}}},{"hash":"984eaf7231c86570ea73f2b56e9c364f335ab380","isMergeCommit":false,"messageTitle":"Changed into correct github account to commit.","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1}}}]},{"date":"2024-01-23","commitResults":[{"hash":"d899ef1ab1ad6bb574586e4412ca3e45dc543035","isMergeCommit":false,"messageTitle":"Update Duke.java","messageBody":"","tags":["Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":3,"deletions":3}}}]},{"date":"2024-01-30","commitResults":[{"hash":"66e5c3f497afe0932bd94fb80295c3628a4528fb","isMergeCommit":false,"messageTitle":"Completed Level-1 Echo","messageBody":"","tags":["Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":25,"deletions":1}}},{"hash":"888f1f8f2a6e06d5979a5b2b1aab63f654410c07","isMergeCommit":false,"messageTitle":"Complete Level-2 Add, List","messageBody":"","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":40,"deletions":12}}}]},{"date":"2024-02-02","commitResults":[{"hash":"5d9b8146cc4a11d0edaa20f15408c83c5b238868","isMergeCommit":false,"messageTitle":"Complete Level-3 Mark as done","messageBody":"","tags":["Level-3"],"fileTypesAndContributionMap":{"java":{"insertions":84,"deletions":36}}}]},{"date":"2024-02-07","commitResults":[{"hash":"b91754d8d71c94fa47d1cd4e372aa62facf9f45b","isMergeCommit":false,"messageTitle":"Cleanup code to follow coding standards","messageBody":"","tags":["A-CodingStandard"],"fileTypesAndContributionMap":{"java":{"insertions":23,"deletions":25}}}]},{"date":"2024-02-09","commitResults":[{"hash":"1d48d74416b380352ca82b4bd1bc6ae5726d14be","isMergeCommit":false,"messageTitle":"Complete Level 4 ToDos, Events, Deadlines","messageBody":"","tags":["Level-4"],"fileTypesAndContributionMap":{"java":{"insertions":160,"deletions":37}}},{"hash":"a3cc5dacb23143c17622cd58a253eaca880157b6","isMergeCommit":false,"messageTitle":"Complete A-TextUiTesting","messageBody":"","tags":["A-TextUiTesting"],"fileTypesAndContributionMap":{"txt":{"insertions":14,"deletions":0},"java":{"insertions":6,"deletions":3}}},{"hash":"c184d4279ea7af88bb279d96b949ce41725dd8c7","isMergeCommit":false,"messageTitle":"Improve code quality","messageBody":"","tags":["A-CodeQuality"],"fileTypesAndContributionMap":{"java":{"insertions":27,"deletions":21}}}]}]},"authorFileTypeContributionMap":{"djleong01":{"java":236,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":14}},"authorContributionVariance":{"djleong01":3723.967},"authorDisplayNameMap":{"djleong01":"CS2113-T15-1 LEON.. JUN"}} diff --git a/e0958902_ip_master/authorship.json b/e0958902_ip_master/authorship.json index 1d5bf4c0..12440224 100644 --- a/e0958902_ip_master/authorship.json +++ b/e0958902_ip_master/authorship.json @@ -1 +1 @@ -[{"path":"README.md","fileType":"md","lines":[{"lineNumber":1,"author":{"gitId":"e0958902"},"content":"# Lotes project template","lastModifiedDate":"2024-01-28"},{"lineNumber":2,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":3,"author":{"gitId":"e0958902"},"content":"This is a project template for a greenfield Java project. It\u0027s named after the Java mascot _Lotes_. Given below are instructions on how to use it.","lastModifiedDate":"2024-01-29"},{"lineNumber":4,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":5,"author":{"gitId":"-"},"content":"## Setting up in Intellij","lastModifiedDate":"2020-05-25"},{"lineNumber":6,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":7,"author":{"gitId":"-"},"content":"Prerequisites: JDK 11, update Intellij to the most recent version.","lastModifiedDate":"2020-05-25"},{"lineNumber":8,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":9,"author":{"gitId":"-"},"content":"1. Open Intellij (if you are not in the welcome screen, click `File` \u003e `Close Project` to close the existing project first)","lastModifiedDate":"2021-01-17"},{"lineNumber":10,"author":{"gitId":"-"},"content":"1. Open the project into Intellij as follows:","lastModifiedDate":"2021-01-17"},{"lineNumber":11,"author":{"gitId":"-"},"content":" 1. Click `Open`.","lastModifiedDate":"2021-01-17"},{"lineNumber":12,"author":{"gitId":"-"},"content":" 1. Select the project directory, and click `OK`.","lastModifiedDate":"2021-01-17"},{"lineNumber":13,"author":{"gitId":"-"},"content":" 1. If there are any further prompts, accept the defaults.","lastModifiedDate":"2020-05-25"},{"lineNumber":14,"author":{"gitId":"-"},"content":"1. Configure the project to use **JDK 11** (not other versions) as explained in [here](https://www.jetbrains.com/help/idea/sdk.html#set-up-jdk).\u003cbr\u003e","lastModifiedDate":"2021-07-29"},{"lineNumber":15,"author":{"gitId":"-"},"content":" In the same dialog, set the **Project language level** field to the `SDK default` option.","lastModifiedDate":"2021-07-29"},{"lineNumber":16,"author":{"gitId":"e0958902"},"content":"3. After that, locate the `src/main/java/Lotes.java` file, right-click it, and choose `Run Lotes.main()` (if the code editor is showing compile errors, try restarting the IDE). If the setup is correct, you should see something like the below as the output:","lastModifiedDate":"2024-01-28"},{"lineNumber":17,"author":{"gitId":"-"},"content":" ```","lastModifiedDate":"2020-05-25"},{"lineNumber":18,"author":{"gitId":"-"},"content":" Hello from","lastModifiedDate":"2024-01-29"},{"lineNumber":19,"author":{"gitId":"e0958902"},"content":" # #### ##### ###### ####","lastModifiedDate":"2024-01-29"},{"lineNumber":20,"author":{"gitId":"e0958902"},"content":" # # # # # #","lastModifiedDate":"2024-01-29"},{"lineNumber":21,"author":{"gitId":"e0958902"},"content":" # # # # ##### ####","lastModifiedDate":"2024-01-29"},{"lineNumber":22,"author":{"gitId":"e0958902"},"content":" # # # # # #","lastModifiedDate":"2024-01-29"},{"lineNumber":23,"author":{"gitId":"e0958902"},"content":" ####### #### # ###### ####","lastModifiedDate":"2024-01-29"},{"lineNumber":24,"author":{"gitId":"-"},"content":" ```","lastModifiedDate":"2024-01-29"}],"authorContributionMap":{"e0958902":8,"-":16}},{"path":"src/main/java/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"e0958902"},"content":"public class Deadline extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"e0958902"},"content":" protected String by;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"e0958902"},"content":" public Deadline(String description, String by) {","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"e0958902"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"e0958902"},"content":" this.by \u003d by;","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"e0958902"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"e0958902"},"content":" return String.format(\"[D]%s %s\", this.getStatusIcon(), this.description);","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"e0958902"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"e0958902":13}},{"path":"src/main/java/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"e0958902"},"content":"public class Event extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"e0958902"},"content":" protected String from;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"e0958902"},"content":" protected String to;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"e0958902"},"content":" public Event(String description, String from, String to) {","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"e0958902"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"e0958902"},"content":" this.from \u003d from;","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"e0958902"},"content":" this.to \u003d to;","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"e0958902"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"e0958902"},"content":" return String.format(\"[E]%s %s\", this.getStatusIcon(), this.description);","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"e0958902"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"e0958902":14}},{"path":"src/main/java/Lotes.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"e0958902"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-01-28"},{"lineNumber":2,"author":{"gitId":"e0958902"},"content":"public class Lotes {","lastModifiedDate":"2024-01-28"},{"lineNumber":3,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":4,"author":{"gitId":"e0958902"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-01-31"},{"lineNumber":5,"author":{"gitId":"e0958902"},"content":" TaskList taskList \u003d new TaskList();","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":7,"author":{"gitId":"e0958902"},"content":" System.out.println(taskList.horizontalLine + taskList.lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"e0958902"},"content":" + \" Hello! I\u0027m\" + taskList.logo + taskList.lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"e0958902"},"content":" + \" What can I do for you?\" + taskList.lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"e0958902"},"content":" + taskList.horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":12,"author":{"gitId":"e0958902"},"content":" Scanner inputCommand \u003d new Scanner(System.in); // Prompt for continuous user input.","lastModifiedDate":"2024-01-31"},{"lineNumber":13,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":14,"author":{"gitId":"e0958902"},"content":" while (true) {","lastModifiedDate":"2024-01-31"},{"lineNumber":15,"author":{"gitId":"e0958902"},"content":" String userInput \u003d inputCommand.nextLine();","lastModifiedDate":"2024-01-31"},{"lineNumber":16,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":17,"author":{"gitId":"e0958902"},"content":" if (userInput.equals(\"bye\")) {","lastModifiedDate":"2024-01-31"},{"lineNumber":18,"author":{"gitId":"e0958902"},"content":" System.out.println(taskList.horizontalLine + taskList.lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"e0958902"},"content":" + \" Bye. Hope to see you again soon!\\n\" + taskList.horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"e0958902"},"content":" break; // Exit the program","lastModifiedDate":"2024-01-31"},{"lineNumber":21,"author":{"gitId":"e0958902"},"content":" } else if (userInput.equals(\"list\")) {","lastModifiedDate":"2024-01-31"},{"lineNumber":22,"author":{"gitId":"e0958902"},"content":" taskList.printTasksList();","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"e0958902"},"content":" } else if (userInput.startsWith(\"mark \")) {","lastModifiedDate":"2024-01-31"},{"lineNumber":25,"author":{"gitId":"e0958902"},"content":" taskList.markTask(userInput);","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"e0958902"},"content":" } else if (userInput.startsWith(\"unmark \")) {","lastModifiedDate":"2024-01-31"},{"lineNumber":28,"author":{"gitId":"e0958902"},"content":" taskList.unMarkTask(userInput);","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"e0958902"},"content":" } else if (userInput.startsWith(\"todo \")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"e0958902"},"content":" taskList.addToDo(userInput);","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"e0958902"},"content":" } else if (userInput.startsWith(\"deadline \")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"e0958902"},"content":" taskList.addDeadline(userInput);","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"e0958902"},"content":" } else if (userInput.startsWith(\"event \")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"e0958902"},"content":" taskList.addEvent(userInput);","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":39,"author":{"gitId":"e0958902"},"content":"// } else if (!userInput.isEmpty()) {","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"e0958902"},"content":"// taskList.addTask(userInput); // Automatically add user input to tasks","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"e0958902"},"content":" //taskList.addNewTask(userInput);","lastModifiedDate":"2024-02-09"},{"lineNumber":42,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":43,"author":{"gitId":"e0958902"},"content":" } else if (userInput.startsWith(\"deadline \")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":44,"author":{"gitId":"e0958902"},"content":" taskList.addDeadline(userInput);","lastModifiedDate":"2024-02-09"},{"lineNumber":45,"author":{"gitId":"e0958902"},"content":" } else {","lastModifiedDate":"2024-01-31"},{"lineNumber":46,"author":{"gitId":"e0958902"},"content":" System.out.println(\"Enter something to add to your task list\");","lastModifiedDate":"2024-01-31"},{"lineNumber":47,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":48,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-01-28"},{"lineNumber":49,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-01-28"},{"lineNumber":50,"author":{"gitId":"-"},"content":" }","lastModifiedDate":"2019-07-29"},{"lineNumber":51,"author":{"gitId":"-"},"content":"}","lastModifiedDate":"2019-07-29"}],"authorContributionMap":{"e0958902":49,"-":2}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"e0958902"},"content":"public class Task {","lastModifiedDate":"2024-01-29"},{"lineNumber":2,"author":{"gitId":"e0958902"},"content":" protected String description;","lastModifiedDate":"2024-01-30"},{"lineNumber":3,"author":{"gitId":"e0958902"},"content":" protected boolean isDone;","lastModifiedDate":"2024-01-30"},{"lineNumber":4,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":5,"author":{"gitId":"e0958902"},"content":" public Task(String description) {","lastModifiedDate":"2024-01-30"},{"lineNumber":6,"author":{"gitId":"e0958902"},"content":" this.description \u003d description;","lastModifiedDate":"2024-01-30"},{"lineNumber":7,"author":{"gitId":"e0958902"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-01-31"},{"lineNumber":8,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":9,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":10,"author":{"gitId":"e0958902"},"content":" public String getDescription() {","lastModifiedDate":"2024-01-30"},{"lineNumber":11,"author":{"gitId":"e0958902"},"content":" return description;","lastModifiedDate":"2024-01-30"},{"lineNumber":12,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":13,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":14,"author":{"gitId":"e0958902"},"content":" public String getStatusIcon() {","lastModifiedDate":"2024-01-30"},{"lineNumber":15,"author":{"gitId":"e0958902"},"content":" return (isDone ?","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"e0958902"},"content":" \"[X]\" :","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"e0958902"},"content":" \"[ ]\"); // returns X if task isDone is true","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":19,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":20,"author":{"gitId":"e0958902"},"content":" public void setDone(boolean isDoneStatus) {","lastModifiedDate":"2024-01-31"},{"lineNumber":21,"author":{"gitId":"e0958902"},"content":" isDone \u003d isDoneStatus;","lastModifiedDate":"2024-01-31"},{"lineNumber":22,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":23,"author":{"gitId":"e0958902"},"content":"}","lastModifiedDate":"2024-01-29"}],"authorContributionMap":{"e0958902":23}},{"path":"src/main/java/TaskList.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"e0958902"},"content":"import java.util.ArrayList;","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"e0958902"},"content":"public class TaskList {","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"e0958902"},"content":" ArrayList\u003cTask\u003e taskList \u003d new ArrayList\u003c\u003e();","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"e0958902"},"content":"// private static Task[] tasks \u003d new Task[100];","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"e0958902"},"content":"// private static int taskCount \u003d 0;","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"e0958902"},"content":" public static final String lineSeparator \u003d System.lineSeparator();","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"e0958902"},"content":" public static final String horizontalLine \u003d \" _________________________\"","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"e0958902"},"content":" + \"___________________________\";","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"e0958902"},"content":" public static final String logo \u003d \" # #### ##### ###### ####\" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"e0958902"},"content":" + \" # # # # # #\" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"e0958902"},"content":" + \" # # # # ##### ####\" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"e0958902"},"content":" + \" # # # # # #\" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"e0958902"},"content":" + \" ####### #### # ###### ####\";","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"e0958902"},"content":" public void printTasksList() {","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"e0958902"},"content":" if (taskList.isEmpty()) {","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"e0958902"},"content":" System.out.println(\" List is empty, please enter some text to add to list.\");","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"e0958902"},"content":" } else {","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"e0958902"},"content":" System.out.println(\" Here are the tasks in your list:\");","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"e0958902"},"content":" int taskListArrayIndex \u003d 0;","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"e0958902"},"content":" for (Task task : taskList) {","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"e0958902"},"content":" taskListArrayIndex++;","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"e0958902"},"content":" String taskFormatter \u003d String.format(\" %d. %s\", taskListArrayIndex, task);","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"e0958902"},"content":" System.out.println(taskFormatter);","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"e0958902"},"content":" public void markTask(String userInput) {","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"e0958902"},"content":" try {","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"e0958902"},"content":" int taskListIndex \u003d Integer.parseInt(userInput.substring(5))","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"e0958902"},"content":" - 1;","lastModifiedDate":"2024-02-09"},{"lineNumber":39,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"e0958902"},"content":" taskList.get(taskListIndex).setDone(true);","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":42,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":43,"author":{"gitId":"e0958902"},"content":" + \" Nice! I\u0027ve marked this task as done:\"","lastModifiedDate":"2024-02-09"},{"lineNumber":44,"author":{"gitId":"e0958902"},"content":" + lineSeparator + \" \" + taskList.get(taskListIndex)","lastModifiedDate":"2024-02-09"},{"lineNumber":45,"author":{"gitId":"e0958902"},"content":" + lineSeparator + horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":46,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":47,"author":{"gitId":"e0958902"},"content":" } catch (IndexOutOfBoundsException | NumberFormatException s) {","lastModifiedDate":"2024-02-09"},{"lineNumber":48,"author":{"gitId":"e0958902"},"content":" System.out.println(\" Invalid integer input\");","lastModifiedDate":"2024-02-09"},{"lineNumber":49,"author":{"gitId":"e0958902"},"content":" printTasksList();","lastModifiedDate":"2024-02-09"},{"lineNumber":50,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":51,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":52,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":53,"author":{"gitId":"e0958902"},"content":" public void unMarkTask(String userInput) {","lastModifiedDate":"2024-02-09"},{"lineNumber":54,"author":{"gitId":"e0958902"},"content":" try {","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"e0958902"},"content":" int taskListIndex \u003d (Integer.parseInt(userInput.substring(7))","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"e0958902"},"content":" - 1);","lastModifiedDate":"2024-02-09"},{"lineNumber":57,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":58,"author":{"gitId":"e0958902"},"content":" taskList.get(taskListIndex).setDone(false);","lastModifiedDate":"2024-02-09"},{"lineNumber":59,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":61,"author":{"gitId":"e0958902"},"content":" + \" OK, I\u0027ve marked this task as not done yet:\"","lastModifiedDate":"2024-02-09"},{"lineNumber":62,"author":{"gitId":"e0958902"},"content":" + lineSeparator + \" \" + taskList.get(taskListIndex)","lastModifiedDate":"2024-02-09"},{"lineNumber":63,"author":{"gitId":"e0958902"},"content":" + lineSeparator + horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":64,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":65,"author":{"gitId":"e0958902"},"content":" } catch (IndexOutOfBoundsException | NumberFormatException s) {","lastModifiedDate":"2024-02-09"},{"lineNumber":66,"author":{"gitId":"e0958902"},"content":" System.out.println(\" Invalid integer input\");","lastModifiedDate":"2024-02-09"},{"lineNumber":67,"author":{"gitId":"e0958902"},"content":" printTasksList();","lastModifiedDate":"2024-02-09"},{"lineNumber":68,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":69,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":70,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":71,"author":{"gitId":"e0958902"},"content":" public void addTask(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":72,"author":{"gitId":"e0958902"},"content":" Task newTask \u003d new Task(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":73,"author":{"gitId":"e0958902"},"content":" taskList.add(newTask);","lastModifiedDate":"2024-02-09"},{"lineNumber":74,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":75,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":76,"author":{"gitId":"e0958902"},"content":" + \" added: \" + description + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":77,"author":{"gitId":"e0958902"},"content":" + horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":78,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":79,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":80,"author":{"gitId":"e0958902"},"content":"// public void addNewTask(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":81,"author":{"gitId":"e0958902"},"content":"// tasks[taskCount] \u003d new Task(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":82,"author":{"gitId":"e0958902"},"content":"// taskCount++;","lastModifiedDate":"2024-02-09"},{"lineNumber":83,"author":{"gitId":"e0958902"},"content":"//","lastModifiedDate":"2024-02-09"},{"lineNumber":84,"author":{"gitId":"e0958902"},"content":"// System.out.println(horizontalLine + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":85,"author":{"gitId":"e0958902"},"content":"// + \" added: \" + description + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":86,"author":{"gitId":"e0958902"},"content":"// + horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":87,"author":{"gitId":"e0958902"},"content":"// }","lastModifiedDate":"2024-02-09"},{"lineNumber":88,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":89,"author":{"gitId":"e0958902"},"content":" public void addToDo(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":90,"author":{"gitId":"e0958902"},"content":" String toDoDescription \u003d description.substring(5);","lastModifiedDate":"2024-02-09"},{"lineNumber":91,"author":{"gitId":"e0958902"},"content":" Task newTask \u003d new ToDo(toDoDescription);","lastModifiedDate":"2024-02-09"},{"lineNumber":92,"author":{"gitId":"e0958902"},"content":" taskList.add(newTask);","lastModifiedDate":"2024-02-09"},{"lineNumber":93,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":94,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":95,"author":{"gitId":"e0958902"},"content":" + \" Got it. I\u0027ve added this task: \" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":96,"author":{"gitId":"e0958902"},"content":" + \" \" + newTask + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":97,"author":{"gitId":"e0958902"},"content":" + \" Now you have \" + taskList.size() + \" tasks in the list\" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":98,"author":{"gitId":"e0958902"},"content":" + horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":99,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":100,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":101,"author":{"gitId":"e0958902"},"content":" public void addDeadline(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":102,"author":{"gitId":"e0958902"},"content":" String deadlineDescription \u003d description.substring(9);","lastModifiedDate":"2024-02-09"},{"lineNumber":103,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":104,"author":{"gitId":"e0958902"},"content":" String[] descriptionArguments \u003d deadlineDescription.split(\"/by\");","lastModifiedDate":"2024-02-09"},{"lineNumber":105,"author":{"gitId":"e0958902"},"content":" String formattedDescription \u003d String.format(\"%s (by: %s)\", descriptionArguments[0].trim(),","lastModifiedDate":"2024-02-09"},{"lineNumber":106,"author":{"gitId":"e0958902"},"content":" descriptionArguments[1].trim());","lastModifiedDate":"2024-02-09"},{"lineNumber":107,"author":{"gitId":"e0958902"},"content":" //System.out.println(formattedDescription);","lastModifiedDate":"2024-02-09"},{"lineNumber":108,"author":{"gitId":"e0958902"},"content":" Task newTask \u003d new Deadline(formattedDescription, descriptionArguments[0]);","lastModifiedDate":"2024-02-09"},{"lineNumber":109,"author":{"gitId":"e0958902"},"content":" taskList.add(newTask);","lastModifiedDate":"2024-02-09"},{"lineNumber":110,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":111,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":112,"author":{"gitId":"e0958902"},"content":" + \" Got it. I\u0027ve added this task: \" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":113,"author":{"gitId":"e0958902"},"content":" + \" \" + newTask + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":114,"author":{"gitId":"e0958902"},"content":" + \" Now you have \" + taskList.size() + \" tasks in the list\" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":115,"author":{"gitId":"e0958902"},"content":" + horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":116,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":117,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":118,"author":{"gitId":"e0958902"},"content":" public void addEvent(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":119,"author":{"gitId":"e0958902"},"content":" String deadlineDescription \u003d description.substring(6);","lastModifiedDate":"2024-02-09"},{"lineNumber":120,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":121,"author":{"gitId":"e0958902"},"content":" String[] descriptionArguments \u003d deadlineDescription.split(\"/from\");","lastModifiedDate":"2024-02-09"},{"lineNumber":122,"author":{"gitId":"e0958902"},"content":" String[] fromAndToArguments \u003d descriptionArguments[1].split(\"/to\");","lastModifiedDate":"2024-02-09"},{"lineNumber":123,"author":{"gitId":"e0958902"},"content":"// System.out.println(fromAndToArguments[0]); //from","lastModifiedDate":"2024-02-09"},{"lineNumber":124,"author":{"gitId":"e0958902"},"content":"// System.out.println(fromAndToArguments[1]); //to","lastModifiedDate":"2024-02-09"},{"lineNumber":125,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":126,"author":{"gitId":"e0958902"},"content":" String formattedDescription \u003d String.format(\"%s(from: %s to: %s)\", descriptionArguments[0],","lastModifiedDate":"2024-02-09"},{"lineNumber":127,"author":{"gitId":"e0958902"},"content":" fromAndToArguments[0].trim(), fromAndToArguments[1].trim());","lastModifiedDate":"2024-02-09"},{"lineNumber":128,"author":{"gitId":"e0958902"},"content":"// System.out.println(formattedDescription);","lastModifiedDate":"2024-02-09"},{"lineNumber":129,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":130,"author":{"gitId":"e0958902"},"content":" Task newTask \u003d new Event(formattedDescription, descriptionArguments[0].trim(),","lastModifiedDate":"2024-02-09"},{"lineNumber":131,"author":{"gitId":"e0958902"},"content":" descriptionArguments[1].trim());","lastModifiedDate":"2024-02-09"},{"lineNumber":132,"author":{"gitId":"e0958902"},"content":" taskList.add(newTask);","lastModifiedDate":"2024-02-09"},{"lineNumber":133,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":134,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":135,"author":{"gitId":"e0958902"},"content":" + \" Got it. I\u0027ve added this task: \" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":136,"author":{"gitId":"e0958902"},"content":" + \" \" + newTask + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":137,"author":{"gitId":"e0958902"},"content":" + \" Now you have \" + taskList.size() + \" tasks in the list\" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":138,"author":{"gitId":"e0958902"},"content":" + horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":139,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":140,"author":{"gitId":"e0958902"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"e0958902":140}},{"path":"src/main/java/ToDo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"e0958902"},"content":"public class ToDo extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"e0958902"},"content":" public ToDo(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"e0958902"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"e0958902"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"e0958902"},"content":" return String.format(\"[T]%s %s\", this.getStatusIcon(), this.description);","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"e0958902"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"e0958902":9}}] +[{"path":"README.md","fileType":"md","lines":[{"lineNumber":1,"author":{"gitId":"e0958902"},"content":"# Lotes project template","lastModifiedDate":"2024-01-28"},{"lineNumber":2,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":3,"author":{"gitId":"e0958902"},"content":"This is a project template for a greenfield Java project. It\u0027s named after the Java mascot _Lotes_. Given below are instructions on how to use it.","lastModifiedDate":"2024-01-29"},{"lineNumber":4,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":5,"author":{"gitId":"-"},"content":"## Setting up in Intellij","lastModifiedDate":"2020-05-25"},{"lineNumber":6,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":7,"author":{"gitId":"-"},"content":"Prerequisites: JDK 11, update Intellij to the most recent version.","lastModifiedDate":"2020-05-25"},{"lineNumber":8,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":9,"author":{"gitId":"-"},"content":"1. Open Intellij (if you are not in the welcome screen, click `File` \u003e `Close Project` to close the existing project first)","lastModifiedDate":"2021-01-17"},{"lineNumber":10,"author":{"gitId":"-"},"content":"1. Open the project into Intellij as follows:","lastModifiedDate":"2021-01-17"},{"lineNumber":11,"author":{"gitId":"-"},"content":" 1. Click `Open`.","lastModifiedDate":"2021-01-17"},{"lineNumber":12,"author":{"gitId":"-"},"content":" 1. Select the project directory, and click `OK`.","lastModifiedDate":"2021-01-17"},{"lineNumber":13,"author":{"gitId":"-"},"content":" 1. If there are any further prompts, accept the defaults.","lastModifiedDate":"2020-05-25"},{"lineNumber":14,"author":{"gitId":"-"},"content":"1. Configure the project to use **JDK 11** (not other versions) as explained in [here](https://www.jetbrains.com/help/idea/sdk.html#set-up-jdk).\u003cbr\u003e","lastModifiedDate":"2021-07-29"},{"lineNumber":15,"author":{"gitId":"-"},"content":" In the same dialog, set the **Project language level** field to the `SDK default` option.","lastModifiedDate":"2021-07-29"},{"lineNumber":16,"author":{"gitId":"e0958902"},"content":"3. After that, locate the `src/main/java/Lotes.java` file, right-click it, and choose `Run Lotes.main()` (if the code editor is showing compile errors, try restarting the IDE). If the setup is correct, you should see something like the below as the output:","lastModifiedDate":"2024-01-28"},{"lineNumber":17,"author":{"gitId":"-"},"content":" ```","lastModifiedDate":"2020-05-25"},{"lineNumber":18,"author":{"gitId":"-"},"content":" Hello from","lastModifiedDate":"2024-01-29"},{"lineNumber":19,"author":{"gitId":"e0958902"},"content":" # #### ##### ###### ####","lastModifiedDate":"2024-01-29"},{"lineNumber":20,"author":{"gitId":"e0958902"},"content":" # # # # # #","lastModifiedDate":"2024-01-29"},{"lineNumber":21,"author":{"gitId":"e0958902"},"content":" # # # # ##### ####","lastModifiedDate":"2024-01-29"},{"lineNumber":22,"author":{"gitId":"e0958902"},"content":" # # # # # #","lastModifiedDate":"2024-01-29"},{"lineNumber":23,"author":{"gitId":"e0958902"},"content":" ####### #### # ###### ####","lastModifiedDate":"2024-01-29"},{"lineNumber":24,"author":{"gitId":"-"},"content":" ```","lastModifiedDate":"2024-01-29"}],"authorContributionMap":{"e0958902":8,"-":16}},{"path":"src/main/backup/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"e0958902"},"content":"public class Deadline extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"e0958902"},"content":" protected String by;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"e0958902"},"content":" public Deadline(String description, String by) {","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"e0958902"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"e0958902"},"content":" this.by \u003d by;","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"e0958902"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"e0958902"},"content":" return String.format(\"[D]%s %s\",","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"e0958902"},"content":" this.getStatusIcon(), this.description);","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"e0958902"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"e0958902":14}},{"path":"src/main/backup/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"e0958902"},"content":"public class Event extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"e0958902"},"content":" protected String from;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"e0958902"},"content":" protected String to;","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"e0958902"},"content":" public Event(String description, String from, String to) {","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"e0958902"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"e0958902"},"content":" this.from \u003d from;","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"e0958902"},"content":" this.to \u003d to;","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"e0958902"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"e0958902"},"content":" return String.format(\"[E]%s %s\",","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"e0958902"},"content":" this.getStatusIcon(), this.description);","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"e0958902"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"e0958902":16}},{"path":"src/main/backup/Lotes.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"e0958902"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"e0958902"},"content":"public class Lotes {","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"e0958902"},"content":" public static final Scanner inputCommand \u003d new Scanner(System.in); // Prompt for continuous user input.","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"e0958902"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"e0958902"},"content":" TaskList taskList \u003d new TaskList();","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"e0958902"},"content":" System.out.println(TaskList.greetings);","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"e0958902"},"content":" while (inputCommand.hasNextLine()) {","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"e0958902"},"content":" String userInput \u003d inputCommand.nextLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"e0958902"},"content":" if (userInput.equals(\"bye\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"e0958902"},"content":" System.out.println(taskList.horizontalLine + taskList.lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"e0958902"},"content":" + \" Bye. Hope to see you again soon!\\n\" + taskList.horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"e0958902"},"content":" break; // Exit the program","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"e0958902"},"content":" } else if (userInput.equals(\"list\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"e0958902"},"content":" taskList.printTasksList();","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"e0958902"},"content":" } else if (userInput.startsWith(\"mark \")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"e0958902"},"content":" taskList.markTask(userInput);","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"e0958902"},"content":" } else if (userInput.startsWith(\"unmark \")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"e0958902"},"content":" taskList.unMarkTask(userInput);","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"e0958902"},"content":" } else if (userInput.startsWith(\"todo \")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"e0958902"},"content":" taskList.addToDo(userInput);","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"e0958902"},"content":" } else if (userInput.startsWith(\"deadline \")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"e0958902"},"content":" taskList.addDeadline(userInput);","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"e0958902"},"content":" } else if (userInput.startsWith(\"event \")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"e0958902"},"content":" taskList.addEvent(userInput);","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"e0958902"},"content":" } else if (userInput.startsWith(\"add \")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"e0958902"},"content":" taskList.addNewTask(userInput);","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":39,"author":{"gitId":"e0958902"},"content":" } else {","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"e0958902"},"content":" System.out.println(\"Enter something to add to your task list\");","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":42,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":43,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":44,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":45,"author":{"gitId":"e0958902"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"e0958902":45}},{"path":"src/main/backup/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"e0958902"},"content":"public class Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"e0958902"},"content":" protected String description;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"e0958902"},"content":" protected boolean isDone;","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"e0958902"},"content":" public Task(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"e0958902"},"content":" this.description \u003d description;","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"e0958902"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"e0958902"},"content":" public String getDescription() {","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"e0958902"},"content":" return description;","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"e0958902"},"content":" public String getStatusIcon() {","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"e0958902"},"content":" return (isDone ?","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"e0958902"},"content":" \"[X]\" :","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"e0958902"},"content":" \"[ ]\"); // returns X if task isDone is true","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"e0958902"},"content":" public void setDone(boolean isDoneStatus) {","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"e0958902"},"content":" isDone \u003d isDoneStatus;","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"e0958902"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"e0958902":24}},{"path":"src/main/backup/TaskList.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"e0958902"},"content":"public class TaskList {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"e0958902"},"content":" private static final Task[] taskList \u003d new Task[100];","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"e0958902"},"content":" private static int taskCount \u003d 0;","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"e0958902"},"content":" public static final String lineSeparator \u003d System.lineSeparator();","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"e0958902"},"content":" public static final String horizontalLine \u003d \" _________________________\"","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"e0958902"},"content":" + \"___________________________\";","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"e0958902"},"content":" public static final String logo \u003d \" # #### ##### ###### ####\" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"e0958902"},"content":" + \" # # # # # #\" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"e0958902"},"content":" + \" # # # # ##### ####\" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"e0958902"},"content":" + \" # # # # # #\" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"e0958902"},"content":" + \" ####### #### # ###### ####\";","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"e0958902"},"content":" public static final String greetings \u003d horizontalLine + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"e0958902"},"content":" + \" Hello! I\u0027m\" + logo + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"e0958902"},"content":" + \" What can I do for you?\" + lineSeparator + horizontalLine;","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"e0958902"},"content":" public void printTasksList() {","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"e0958902"},"content":" if (taskCount \u003d\u003d 0) {","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"e0958902"},"content":" System.out.println(\" List is empty, please enter some text to add to list.\");","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"e0958902"},"content":" } else {","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"e0958902"},"content":" System.out.println(\" Here are the tasks in your list:\");","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"e0958902"},"content":" for (int i \u003d 0; i \u003c taskCount; i++) {","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"e0958902"},"content":" String taskFormatter \u003d String.format(\" %d. %s\", (i + 1), taskList[i].getDescription());","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"e0958902"},"content":" System.out.println(taskFormatter);","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"e0958902"},"content":" public void markTask(String userInput) {","lastModifiedDate":"2024-02-09"},{"lineNumber":39,"author":{"gitId":"e0958902"},"content":" try {","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"e0958902"},"content":" int taskListIndex \u003d Integer.parseInt(userInput.substring(5))","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"e0958902"},"content":" - 1;","lastModifiedDate":"2024-02-09"},{"lineNumber":42,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":43,"author":{"gitId":"e0958902"},"content":" taskList[taskListIndex].setDone(true);","lastModifiedDate":"2024-02-09"},{"lineNumber":44,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":45,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":46,"author":{"gitId":"e0958902"},"content":" + \" Nice! I\u0027ve marked this task as done:\"","lastModifiedDate":"2024-02-09"},{"lineNumber":47,"author":{"gitId":"e0958902"},"content":" + lineSeparator + \" \" + taskList[taskListIndex]","lastModifiedDate":"2024-02-09"},{"lineNumber":48,"author":{"gitId":"e0958902"},"content":" + lineSeparator + horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":49,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":50,"author":{"gitId":"e0958902"},"content":" } catch (IndexOutOfBoundsException | NumberFormatException s) {","lastModifiedDate":"2024-02-09"},{"lineNumber":51,"author":{"gitId":"e0958902"},"content":" System.out.println(\" Invalid integer input\");","lastModifiedDate":"2024-02-09"},{"lineNumber":52,"author":{"gitId":"e0958902"},"content":" printTasksList();","lastModifiedDate":"2024-02-09"},{"lineNumber":53,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":54,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"e0958902"},"content":" public void unMarkTask(String userInput) {","lastModifiedDate":"2024-02-09"},{"lineNumber":57,"author":{"gitId":"e0958902"},"content":" try {","lastModifiedDate":"2024-02-09"},{"lineNumber":58,"author":{"gitId":"e0958902"},"content":" int taskListIndex \u003d (Integer.parseInt(userInput.substring(7))","lastModifiedDate":"2024-02-09"},{"lineNumber":59,"author":{"gitId":"e0958902"},"content":" - 1);","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":61,"author":{"gitId":"e0958902"},"content":" taskList[taskListIndex].setDone(false);","lastModifiedDate":"2024-02-09"},{"lineNumber":62,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":63,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":64,"author":{"gitId":"e0958902"},"content":" + \" OK, I\u0027ve marked this task as not done yet:\"","lastModifiedDate":"2024-02-09"},{"lineNumber":65,"author":{"gitId":"e0958902"},"content":" + lineSeparator + \" \" + taskList[taskListIndex]","lastModifiedDate":"2024-02-09"},{"lineNumber":66,"author":{"gitId":"e0958902"},"content":" + lineSeparator + horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":67,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":68,"author":{"gitId":"e0958902"},"content":" } catch (IndexOutOfBoundsException | NumberFormatException s) {","lastModifiedDate":"2024-02-09"},{"lineNumber":69,"author":{"gitId":"e0958902"},"content":" System.out.println(\" Invalid integer input\");","lastModifiedDate":"2024-02-09"},{"lineNumber":70,"author":{"gitId":"e0958902"},"content":" printTasksList();","lastModifiedDate":"2024-02-09"},{"lineNumber":71,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":72,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":73,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":74,"author":{"gitId":"e0958902"},"content":" public void addNewTask(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":75,"author":{"gitId":"e0958902"},"content":" taskList[taskCount] \u003d new Task(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":76,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":77,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":78,"author":{"gitId":"e0958902"},"content":" + \" added: \" + description + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":79,"author":{"gitId":"e0958902"},"content":" + horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":80,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":81,"author":{"gitId":"e0958902"},"content":" taskCount++;","lastModifiedDate":"2024-02-09"},{"lineNumber":82,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":83,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":84,"author":{"gitId":"e0958902"},"content":" public void addToDo(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":85,"author":{"gitId":"e0958902"},"content":" String toDoDescription \u003d description.substring(5);","lastModifiedDate":"2024-02-09"},{"lineNumber":86,"author":{"gitId":"e0958902"},"content":" taskList[taskCount] \u003d new ToDo(toDoDescription);","lastModifiedDate":"2024-02-09"},{"lineNumber":87,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":88,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":89,"author":{"gitId":"e0958902"},"content":" + \" Got it. I\u0027ve added this task: \" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":90,"author":{"gitId":"e0958902"},"content":" + \" \" + taskList[taskCount] + lineSeparator + \" Now you have \"","lastModifiedDate":"2024-02-09"},{"lineNumber":91,"author":{"gitId":"e0958902"},"content":" + taskCount + \" tasks in the list\" + lineSeparator + horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":92,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":93,"author":{"gitId":"e0958902"},"content":" taskCount++;","lastModifiedDate":"2024-02-09"},{"lineNumber":94,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":95,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":96,"author":{"gitId":"e0958902"},"content":" public void addDeadline(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":97,"author":{"gitId":"e0958902"},"content":" String deadlineDescription \u003d description.substring(9);","lastModifiedDate":"2024-02-09"},{"lineNumber":98,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":99,"author":{"gitId":"e0958902"},"content":" String[] descriptionArguments \u003d deadlineDescription.split(\"/by\");","lastModifiedDate":"2024-02-09"},{"lineNumber":100,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":101,"author":{"gitId":"e0958902"},"content":" String formattedDescription \u003d String.format(\"%s (by: %s)\",","lastModifiedDate":"2024-02-09"},{"lineNumber":102,"author":{"gitId":"e0958902"},"content":" descriptionArguments[0].trim(), descriptionArguments[1].trim());","lastModifiedDate":"2024-02-09"},{"lineNumber":103,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":104,"author":{"gitId":"e0958902"},"content":" taskList[taskCount] \u003d new Deadline(formattedDescription, descriptionArguments[0]);","lastModifiedDate":"2024-02-09"},{"lineNumber":105,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":106,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":107,"author":{"gitId":"e0958902"},"content":" + \" Got it. I\u0027ve added this task: \" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":108,"author":{"gitId":"e0958902"},"content":" + \" \" + taskList[taskCount] + lineSeparator + \" Now you have \"","lastModifiedDate":"2024-02-09"},{"lineNumber":109,"author":{"gitId":"e0958902"},"content":" + taskCount + \" tasks in the list\" + lineSeparator + horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":110,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":111,"author":{"gitId":"e0958902"},"content":" taskCount++;","lastModifiedDate":"2024-02-09"},{"lineNumber":112,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":113,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":114,"author":{"gitId":"e0958902"},"content":" public void addEvent(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":115,"author":{"gitId":"e0958902"},"content":" String deadlineDescription \u003d description.substring(6);","lastModifiedDate":"2024-02-09"},{"lineNumber":116,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":117,"author":{"gitId":"e0958902"},"content":" String[] descriptionArguments \u003d deadlineDescription.split(\"/from\");","lastModifiedDate":"2024-02-09"},{"lineNumber":118,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":119,"author":{"gitId":"e0958902"},"content":" String[] fromAndToArguments \u003d descriptionArguments[1].split(\"/to\");","lastModifiedDate":"2024-02-09"},{"lineNumber":120,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":121,"author":{"gitId":"e0958902"},"content":" String formattedDescription \u003d String.format(\"%s(from: %s to: %s)\", descriptionArguments[0],","lastModifiedDate":"2024-02-09"},{"lineNumber":122,"author":{"gitId":"e0958902"},"content":" fromAndToArguments[0].trim(), fromAndToArguments[1].trim());","lastModifiedDate":"2024-02-09"},{"lineNumber":123,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":124,"author":{"gitId":"e0958902"},"content":" taskList[taskCount] \u003d new Event(formattedDescription,","lastModifiedDate":"2024-02-09"},{"lineNumber":125,"author":{"gitId":"e0958902"},"content":" descriptionArguments[0].trim(), descriptionArguments[1].trim());","lastModifiedDate":"2024-02-09"},{"lineNumber":126,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":127,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":128,"author":{"gitId":"e0958902"},"content":" + \" Got it. I\u0027ve added this task: \" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":129,"author":{"gitId":"e0958902"},"content":" + \" \" + taskList[taskCount] + lineSeparator + \" Now you have \"","lastModifiedDate":"2024-02-09"},{"lineNumber":130,"author":{"gitId":"e0958902"},"content":" + taskCount + \" tasks in the list\" + lineSeparator + horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":131,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":132,"author":{"gitId":"e0958902"},"content":" taskCount++;","lastModifiedDate":"2024-02-09"},{"lineNumber":133,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":134,"author":{"gitId":"e0958902"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"e0958902":134}},{"path":"src/main/backup/ToDo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"e0958902"},"content":"public class ToDo extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"e0958902"},"content":" public ToDo(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"e0958902"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"e0958902"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"e0958902"},"content":" return String.format(\"[T]%s %s\",","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"e0958902"},"content":" this.getStatusIcon(), this.description);","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"e0958902"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"e0958902":11}},{"path":"src/main/java/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"e0958902"},"content":"public class Deadline extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"e0958902"},"content":" protected String by;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"e0958902"},"content":" public Deadline(String description, String by) {","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"e0958902"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"e0958902"},"content":" this.by \u003d by;","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"e0958902"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"e0958902"},"content":" return String.format(\"[D]%s %s\",","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"e0958902"},"content":" this.getStatusIcon(), this.description);","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"e0958902"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"e0958902":14}},{"path":"src/main/java/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"e0958902"},"content":"public class Event extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"e0958902"},"content":" protected String from;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"e0958902"},"content":" protected String to;","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"e0958902"},"content":" public Event(String description, String from, String to) {","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"e0958902"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"e0958902"},"content":" this.from \u003d from;","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"e0958902"},"content":" this.to \u003d to;","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"e0958902"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"e0958902"},"content":" return String.format(\"[E]%s %s\",","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"e0958902"},"content":" this.getStatusIcon(), this.description);","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"e0958902"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"e0958902":17}},{"path":"src/main/java/Lotes.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"e0958902"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-01-28"},{"lineNumber":2,"author":{"gitId":"e0958902"},"content":"public class Lotes {","lastModifiedDate":"2024-01-28"},{"lineNumber":3,"author":{"gitId":"e0958902"},"content":" public static final Scanner inputCommand \u003d new Scanner(System.in); // Prompt for continuous user input.","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":5,"author":{"gitId":"e0958902"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-01-31"},{"lineNumber":6,"author":{"gitId":"e0958902"},"content":" TaskList taskList \u003d new TaskList();","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":8,"author":{"gitId":"e0958902"},"content":" System.out.println(TaskList.greetingsMessage);","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":10,"author":{"gitId":"e0958902"},"content":" while (inputCommand.hasNextLine()) {","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"e0958902"},"content":" String userInput \u003d inputCommand.nextLine();","lastModifiedDate":"2024-01-31"},{"lineNumber":12,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":13,"author":{"gitId":"e0958902"},"content":" if (TaskList.readUserInput(userInput, taskList)) {","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"e0958902"},"content":" break; // Exit the program","lastModifiedDate":"2024-01-31"},{"lineNumber":15,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-01-28"},{"lineNumber":16,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-01-28"},{"lineNumber":17,"author":{"gitId":"-"},"content":" }","lastModifiedDate":"2019-07-29"},{"lineNumber":18,"author":{"gitId":"-"},"content":"}","lastModifiedDate":"2019-07-29"}],"authorContributionMap":{"e0958902":16,"-":2}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"e0958902"},"content":"public class Task {","lastModifiedDate":"2024-01-29"},{"lineNumber":2,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"e0958902"},"content":" protected String description;","lastModifiedDate":"2024-01-30"},{"lineNumber":4,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"e0958902"},"content":" protected boolean isDone;","lastModifiedDate":"2024-01-30"},{"lineNumber":6,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":7,"author":{"gitId":"e0958902"},"content":" public Task(String description) {","lastModifiedDate":"2024-01-30"},{"lineNumber":8,"author":{"gitId":"e0958902"},"content":" this.description \u003d description;","lastModifiedDate":"2024-01-30"},{"lineNumber":9,"author":{"gitId":"e0958902"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-01-31"},{"lineNumber":10,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":11,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":12,"author":{"gitId":"e0958902"},"content":" public String getDescription() {","lastModifiedDate":"2024-01-30"},{"lineNumber":13,"author":{"gitId":"e0958902"},"content":" return description;","lastModifiedDate":"2024-01-30"},{"lineNumber":14,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":15,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":16,"author":{"gitId":"e0958902"},"content":" public String getStatusIcon() {","lastModifiedDate":"2024-01-30"},{"lineNumber":17,"author":{"gitId":"e0958902"},"content":" return (isDone ?","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"e0958902"},"content":" \"[X]\" :","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"e0958902"},"content":" \"[ ]\"); // returns X if task isDone is true","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":21,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-01-31"},{"lineNumber":22,"author":{"gitId":"e0958902"},"content":" public void setDone(boolean isDoneStatus) {","lastModifiedDate":"2024-01-31"},{"lineNumber":23,"author":{"gitId":"e0958902"},"content":" isDone \u003d isDoneStatus;","lastModifiedDate":"2024-01-31"},{"lineNumber":24,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":25,"author":{"gitId":"e0958902"},"content":"}","lastModifiedDate":"2024-01-29"}],"authorContributionMap":{"e0958902":25}},{"path":"src/main/java/TaskList.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"e0958902"},"content":"public class TaskList {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"e0958902"},"content":" private static final Task[] taskList \u003d new Task[100];","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"e0958902"},"content":" private static int taskCount \u003d 0;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"e0958902"},"content":" public static final String lineSeparator \u003d System.lineSeparator();","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"e0958902"},"content":" public static final String horizontalLine \u003d \" _________________________\"","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"e0958902"},"content":" + \"___________________________\";","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"e0958902"},"content":" public static final String logo \u003d \" # #### ##### ###### ####\" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"e0958902"},"content":" + \" # # # # # #\" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"e0958902"},"content":" + \" # # # # ##### ####\" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"e0958902"},"content":" + \" # # # # # #\" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"e0958902"},"content":" + \" ####### #### # ###### ####\";","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"e0958902"},"content":" public static final String greetingsMessage \u003d horizontalLine + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"e0958902"},"content":" + \" Hello! I\u0027m\" + logo + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"e0958902"},"content":" + \" What can I do for you?\" + lineSeparator + horizontalLine;","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"e0958902"},"content":" public static final String goodbyeMessage \u003d horizontalLine + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"e0958902"},"content":" + \" Bye. Hope to see you again soon!\"","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"e0958902"},"content":" + lineSeparator + horizontalLine;","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"e0958902"},"content":" public static boolean readUserInput(String userInput, TaskList taskList) {","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"e0958902"},"content":" if (userInput.equals(\"bye\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"e0958902"},"content":" System.out.println(taskList.goodbyeMessage);","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"e0958902"},"content":" return true;","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"e0958902"},"content":" } else if (userInput.equals(\"list\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"e0958902"},"content":" taskList.printTasksList();","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"e0958902"},"content":" } else if (userInput.startsWith(\"mark \")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"e0958902"},"content":" taskList.markTask(userInput);","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"e0958902"},"content":" } else if (userInput.startsWith(\"unmark \")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"e0958902"},"content":" taskList.unMarkTask(userInput);","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"e0958902"},"content":" } else if (userInput.startsWith(\"todo \")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"e0958902"},"content":" taskList.addToDo(userInput);","lastModifiedDate":"2024-02-09"},{"lineNumber":39,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"e0958902"},"content":" } else if (userInput.startsWith(\"deadline \")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"e0958902"},"content":" taskList.addDeadline(userInput);","lastModifiedDate":"2024-02-09"},{"lineNumber":42,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":43,"author":{"gitId":"e0958902"},"content":" } else if (userInput.startsWith(\"event \")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":44,"author":{"gitId":"e0958902"},"content":" taskList.addEvent(userInput);","lastModifiedDate":"2024-02-09"},{"lineNumber":45,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":46,"author":{"gitId":"e0958902"},"content":" } else if (userInput.startsWith(\"add \")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":47,"author":{"gitId":"e0958902"},"content":" taskList.addNewTask(userInput);","lastModifiedDate":"2024-02-09"},{"lineNumber":48,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":49,"author":{"gitId":"e0958902"},"content":" } else {","lastModifiedDate":"2024-02-09"},{"lineNumber":50,"author":{"gitId":"e0958902"},"content":" System.out.println(\"Enter something to add to your task list\");","lastModifiedDate":"2024-02-09"},{"lineNumber":51,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":52,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":53,"author":{"gitId":"e0958902"},"content":" return false;","lastModifiedDate":"2024-02-09"},{"lineNumber":54,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"e0958902"},"content":" public void printTasksList() {","lastModifiedDate":"2024-02-09"},{"lineNumber":57,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":58,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":59,"author":{"gitId":"e0958902"},"content":" if (taskCount \u003d\u003d 0) {","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"e0958902"},"content":" System.out.println(\" List is empty, please enter some text to add to list.\");","lastModifiedDate":"2024-02-09"},{"lineNumber":61,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":62,"author":{"gitId":"e0958902"},"content":" } else {","lastModifiedDate":"2024-02-09"},{"lineNumber":63,"author":{"gitId":"e0958902"},"content":" System.out.println(\" Here are the tasks in your list:\");","lastModifiedDate":"2024-02-09"},{"lineNumber":64,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":65,"author":{"gitId":"e0958902"},"content":" for (int i \u003d 0; i \u003c taskCount; i++) {","lastModifiedDate":"2024-02-09"},{"lineNumber":66,"author":{"gitId":"e0958902"},"content":" String taskFormatter \u003d String.format(\" %d. %s\",","lastModifiedDate":"2024-02-09"},{"lineNumber":67,"author":{"gitId":"e0958902"},"content":" (i + 1), taskList[i]);","lastModifiedDate":"2024-02-09"},{"lineNumber":68,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":69,"author":{"gitId":"e0958902"},"content":" System.out.println(taskFormatter);","lastModifiedDate":"2024-02-09"},{"lineNumber":70,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":71,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":72,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":73,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":74,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":75,"author":{"gitId":"e0958902"},"content":" public void markTask(String userInput) {","lastModifiedDate":"2024-02-09"},{"lineNumber":76,"author":{"gitId":"e0958902"},"content":" try {","lastModifiedDate":"2024-02-09"},{"lineNumber":77,"author":{"gitId":"e0958902"},"content":" int taskListIndex \u003d Integer.parseInt(","lastModifiedDate":"2024-02-09"},{"lineNumber":78,"author":{"gitId":"e0958902"},"content":" userInput.substring(5))","lastModifiedDate":"2024-02-09"},{"lineNumber":79,"author":{"gitId":"e0958902"},"content":" - 1;","lastModifiedDate":"2024-02-09"},{"lineNumber":80,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":81,"author":{"gitId":"e0958902"},"content":" taskList[taskListIndex].setDone(true);","lastModifiedDate":"2024-02-09"},{"lineNumber":82,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":83,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":84,"author":{"gitId":"e0958902"},"content":" + \" Nice! I\u0027ve marked this task as done:\"","lastModifiedDate":"2024-02-09"},{"lineNumber":85,"author":{"gitId":"e0958902"},"content":" + lineSeparator + \" \" + taskList[taskListIndex]","lastModifiedDate":"2024-02-09"},{"lineNumber":86,"author":{"gitId":"e0958902"},"content":" + lineSeparator + horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":87,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":88,"author":{"gitId":"e0958902"},"content":" } catch (IndexOutOfBoundsException | NumberFormatException s) {","lastModifiedDate":"2024-02-09"},{"lineNumber":89,"author":{"gitId":"e0958902"},"content":" System.out.println(\" Invalid integer input\");","lastModifiedDate":"2024-02-09"},{"lineNumber":90,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":91,"author":{"gitId":"e0958902"},"content":" printTasksList();","lastModifiedDate":"2024-02-09"},{"lineNumber":92,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":93,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":94,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":95,"author":{"gitId":"e0958902"},"content":" public void unMarkTask(String userInput) {","lastModifiedDate":"2024-02-09"},{"lineNumber":96,"author":{"gitId":"e0958902"},"content":" try {","lastModifiedDate":"2024-02-09"},{"lineNumber":97,"author":{"gitId":"e0958902"},"content":" int taskListIndex \u003d (Integer.parseInt(","lastModifiedDate":"2024-02-09"},{"lineNumber":98,"author":{"gitId":"e0958902"},"content":" userInput.substring(7))","lastModifiedDate":"2024-02-09"},{"lineNumber":99,"author":{"gitId":"e0958902"},"content":" - 1);","lastModifiedDate":"2024-02-09"},{"lineNumber":100,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":101,"author":{"gitId":"e0958902"},"content":" taskList[taskListIndex].setDone(false);","lastModifiedDate":"2024-02-09"},{"lineNumber":102,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":103,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":104,"author":{"gitId":"e0958902"},"content":" + \" OK, I\u0027ve marked this task as not done yet:\"","lastModifiedDate":"2024-02-09"},{"lineNumber":105,"author":{"gitId":"e0958902"},"content":" + lineSeparator + \" \" + taskList[taskListIndex]","lastModifiedDate":"2024-02-09"},{"lineNumber":106,"author":{"gitId":"e0958902"},"content":" + lineSeparator + horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":107,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":108,"author":{"gitId":"e0958902"},"content":" } catch (IndexOutOfBoundsException | NumberFormatException s) {","lastModifiedDate":"2024-02-09"},{"lineNumber":109,"author":{"gitId":"e0958902"},"content":" System.out.println(\" Invalid integer input\");","lastModifiedDate":"2024-02-09"},{"lineNumber":110,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":111,"author":{"gitId":"e0958902"},"content":" printTasksList();","lastModifiedDate":"2024-02-09"},{"lineNumber":112,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":113,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":114,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":115,"author":{"gitId":"e0958902"},"content":" public void addNewTask(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":116,"author":{"gitId":"e0958902"},"content":" taskList[taskCount] \u003d new Task(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":117,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":118,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":119,"author":{"gitId":"e0958902"},"content":" + \" added: \" + description + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":120,"author":{"gitId":"e0958902"},"content":" + horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":121,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":122,"author":{"gitId":"e0958902"},"content":" taskCount++;","lastModifiedDate":"2024-02-09"},{"lineNumber":123,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":124,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":125,"author":{"gitId":"e0958902"},"content":" public void addToDo(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":126,"author":{"gitId":"e0958902"},"content":" String toDoDescription \u003d description.substring(5);","lastModifiedDate":"2024-02-09"},{"lineNumber":127,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":128,"author":{"gitId":"e0958902"},"content":" taskList[taskCount] \u003d new ToDo(toDoDescription);","lastModifiedDate":"2024-02-09"},{"lineNumber":129,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":130,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":131,"author":{"gitId":"e0958902"},"content":" + \" Got it. I\u0027ve added this task: \" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":132,"author":{"gitId":"e0958902"},"content":" + \" \" + taskList[taskCount] + lineSeparator + \" Now you have \"","lastModifiedDate":"2024-02-09"},{"lineNumber":133,"author":{"gitId":"e0958902"},"content":" + (taskCount + 1) + \" tasks in the list\" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":134,"author":{"gitId":"e0958902"},"content":" + horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":135,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":136,"author":{"gitId":"e0958902"},"content":" taskCount++;","lastModifiedDate":"2024-02-09"},{"lineNumber":137,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":138,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":139,"author":{"gitId":"e0958902"},"content":" public void addDeadline(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":140,"author":{"gitId":"e0958902"},"content":" String deadlineDescription \u003d description.substring(9);","lastModifiedDate":"2024-02-09"},{"lineNumber":141,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":142,"author":{"gitId":"e0958902"},"content":" String[] descriptionArguments \u003d deadlineDescription.split(\"/by\");","lastModifiedDate":"2024-02-09"},{"lineNumber":143,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":144,"author":{"gitId":"e0958902"},"content":" String properDescription\u003d descriptionArguments[0].trim();","lastModifiedDate":"2024-02-09"},{"lineNumber":145,"author":{"gitId":"e0958902"},"content":" String byDate \u003d descriptionArguments[1].trim();","lastModifiedDate":"2024-02-09"},{"lineNumber":146,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":147,"author":{"gitId":"e0958902"},"content":" String formattedDescription \u003d String.format(\"%s (by: %s)\",","lastModifiedDate":"2024-02-09"},{"lineNumber":148,"author":{"gitId":"e0958902"},"content":" properDescription, byDate);","lastModifiedDate":"2024-02-09"},{"lineNumber":149,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":150,"author":{"gitId":"e0958902"},"content":" taskList[taskCount] \u003d new Deadline(formattedDescription, byDate);","lastModifiedDate":"2024-02-09"},{"lineNumber":151,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":152,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":153,"author":{"gitId":"e0958902"},"content":" + \" Got it. I\u0027ve added this task: \" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":154,"author":{"gitId":"e0958902"},"content":" + \" \" + taskList[taskCount] + lineSeparator + \" Now you have \"","lastModifiedDate":"2024-02-09"},{"lineNumber":155,"author":{"gitId":"e0958902"},"content":" + (taskCount + 1) + \" tasks in the list\" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":156,"author":{"gitId":"e0958902"},"content":" + horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":157,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":158,"author":{"gitId":"e0958902"},"content":" taskCount++;","lastModifiedDate":"2024-02-09"},{"lineNumber":159,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":160,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":161,"author":{"gitId":"e0958902"},"content":" public void addEvent(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":162,"author":{"gitId":"e0958902"},"content":" String deadlineDescription \u003d description.substring(6);","lastModifiedDate":"2024-02-09"},{"lineNumber":163,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":164,"author":{"gitId":"e0958902"},"content":" String[] descriptionArguments \u003d deadlineDescription.split(\"/from\");","lastModifiedDate":"2024-02-09"},{"lineNumber":165,"author":{"gitId":"e0958902"},"content":" String[] fromAndToArguments \u003d descriptionArguments[1].split(\"/to\");","lastModifiedDate":"2024-02-09"},{"lineNumber":166,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":167,"author":{"gitId":"e0958902"},"content":" String properDescription\u003d descriptionArguments[0];","lastModifiedDate":"2024-02-09"},{"lineNumber":168,"author":{"gitId":"e0958902"},"content":" String from \u003d fromAndToArguments[0].trim();","lastModifiedDate":"2024-02-09"},{"lineNumber":169,"author":{"gitId":"e0958902"},"content":" String to \u003d fromAndToArguments[1].trim();","lastModifiedDate":"2024-02-09"},{"lineNumber":170,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":171,"author":{"gitId":"e0958902"},"content":" String formattedDescription \u003d String.format(\"%s(from: %s to: %s)\",","lastModifiedDate":"2024-02-09"},{"lineNumber":172,"author":{"gitId":"e0958902"},"content":" properDescription, from, to);","lastModifiedDate":"2024-02-09"},{"lineNumber":173,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":174,"author":{"gitId":"e0958902"},"content":" taskList[taskCount] \u003d new Event(formattedDescription, from, to);","lastModifiedDate":"2024-02-09"},{"lineNumber":175,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":176,"author":{"gitId":"e0958902"},"content":" System.out.println(horizontalLine + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":177,"author":{"gitId":"e0958902"},"content":" + \" Got it. I\u0027ve added this task: \" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":178,"author":{"gitId":"e0958902"},"content":" + \" \" + taskList[taskCount] + lineSeparator + \" Now you have \"","lastModifiedDate":"2024-02-09"},{"lineNumber":179,"author":{"gitId":"e0958902"},"content":" + (taskCount + 1) + \" tasks in the list\" + lineSeparator","lastModifiedDate":"2024-02-09"},{"lineNumber":180,"author":{"gitId":"e0958902"},"content":" + horizontalLine);","lastModifiedDate":"2024-02-09"},{"lineNumber":181,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":182,"author":{"gitId":"e0958902"},"content":" taskCount++;","lastModifiedDate":"2024-02-09"},{"lineNumber":183,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":184,"author":{"gitId":"e0958902"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"e0958902":184}},{"path":"src/main/java/ToDo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"e0958902"},"content":"public class ToDo extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"e0958902"},"content":" public ToDo(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"e0958902"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"e0958902"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"e0958902"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"e0958902"},"content":" return String.format(\"[T]%s %s\",","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"e0958902"},"content":" this.getStatusIcon(), this.description);","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"e0958902"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"e0958902"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"e0958902":11}},{"path":"text-ui-test/input.txt","fileType":"txt","lines":[{"lineNumber":1,"author":{"gitId":"e0958902"},"content":"todo Eric Sim Chong Li: Answer CS2113T tutorial questions","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"e0958902"},"content":"deadline Weekly CS2113T quiz /by Monday 9pm","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"e0958902"},"content":"list","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"e0958902"},"content":"event CS2113T lecture /from Friday 4pm /to 6pm","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"e0958902"},"content":"mark 1","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"e0958902"},"content":"list","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"e0958902":6}},{"path":"text-ui-test/runtest.bat","fileType":"bat","lines":[{"lineNumber":1,"author":{"gitId":"-"},"content":"@ECHO OFF","lastModifiedDate":"2020-05-25"},{"lineNumber":2,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":3,"author":{"gitId":"-"},"content":"REM create bin directory if it doesn\u0027t exist","lastModifiedDate":"2020-05-25"},{"lineNumber":4,"author":{"gitId":"-"},"content":"if not exist ..\\bin mkdir ..\\bin","lastModifiedDate":"2020-05-25"},{"lineNumber":5,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":6,"author":{"gitId":"-"},"content":"REM delete output from previous run","lastModifiedDate":"2020-05-25"},{"lineNumber":7,"author":{"gitId":"-"},"content":"if exist ACTUAL.TXT del ACTUAL.TXT","lastModifiedDate":"2020-08-25"},{"lineNumber":8,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":9,"author":{"gitId":"-"},"content":"REM compile the code into the bin folder","lastModifiedDate":"2020-05-25"},{"lineNumber":10,"author":{"gitId":"-"},"content":"javac -cp ..\\src\\main\\java -Xlint:none -d ..\\bin ..\\src\\main\\java\\*.java","lastModifiedDate":"2020-08-25"},{"lineNumber":11,"author":{"gitId":"-"},"content":"IF ERRORLEVEL 1 (","lastModifiedDate":"2020-05-25"},{"lineNumber":12,"author":{"gitId":"-"},"content":" echo ********** BUILD FAILURE **********","lastModifiedDate":"2020-05-25"},{"lineNumber":13,"author":{"gitId":"-"},"content":" exit /b 1","lastModifiedDate":"2020-05-25"},{"lineNumber":14,"author":{"gitId":"-"},"content":")","lastModifiedDate":"2020-05-25"},{"lineNumber":15,"author":{"gitId":"-"},"content":"REM no error here, errorlevel \u003d\u003d 0","lastModifiedDate":"2020-05-25"},{"lineNumber":16,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":17,"author":{"gitId":"-"},"content":"REM run the program, feed commands from input.txt file and redirect the output to the ACTUAL.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":18,"author":{"gitId":"e0958902"},"content":"java -classpath ..\\bin Lotes \u003c input.txt \u003e ACTUAL.TXT","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":20,"author":{"gitId":"-"},"content":"REM compare the output to the expected output","lastModifiedDate":"2020-05-25"},{"lineNumber":21,"author":{"gitId":"-"},"content":"FC ACTUAL.TXT EXPECTED.TXT","lastModifiedDate":"2020-05-25"}],"authorContributionMap":{"e0958902":1,"-":20}},{"path":"text-ui-test/runtest.sh","fileType":"sh","lines":[{"lineNumber":1,"author":{"gitId":"-"},"content":"#!/usr/bin/env bash","lastModifiedDate":"2020-05-25"},{"lineNumber":2,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":3,"author":{"gitId":"-"},"content":"# create bin directory if it doesn\u0027t exist","lastModifiedDate":"2020-05-25"},{"lineNumber":4,"author":{"gitId":"-"},"content":"if [ ! -d \"../bin\" ]","lastModifiedDate":"2020-05-25"},{"lineNumber":5,"author":{"gitId":"-"},"content":"then","lastModifiedDate":"2020-05-25"},{"lineNumber":6,"author":{"gitId":"-"},"content":" mkdir ../bin","lastModifiedDate":"2020-05-25"},{"lineNumber":7,"author":{"gitId":"-"},"content":"fi","lastModifiedDate":"2020-05-25"},{"lineNumber":8,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":9,"author":{"gitId":"-"},"content":"# delete output from previous run","lastModifiedDate":"2020-05-25"},{"lineNumber":10,"author":{"gitId":"-"},"content":"if [ -e \"./ACTUAL.TXT\" ]","lastModifiedDate":"2020-05-25"},{"lineNumber":11,"author":{"gitId":"-"},"content":"then","lastModifiedDate":"2020-05-25"},{"lineNumber":12,"author":{"gitId":"-"},"content":" rm ACTUAL.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":13,"author":{"gitId":"-"},"content":"fi","lastModifiedDate":"2020-05-25"},{"lineNumber":14,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":15,"author":{"gitId":"-"},"content":"# compile the code into the bin folder, terminates if error occurred","lastModifiedDate":"2020-05-25"},{"lineNumber":16,"author":{"gitId":"-"},"content":"if ! javac -cp ../src/main/java -Xlint:none -d ../bin ../src/main/java/*.java","lastModifiedDate":"2020-08-25"},{"lineNumber":17,"author":{"gitId":"-"},"content":"then","lastModifiedDate":"2020-05-25"},{"lineNumber":18,"author":{"gitId":"-"},"content":" echo \"********** BUILD FAILURE **********\"","lastModifiedDate":"2020-05-25"},{"lineNumber":19,"author":{"gitId":"-"},"content":" exit 1","lastModifiedDate":"2020-05-25"},{"lineNumber":20,"author":{"gitId":"-"},"content":"fi","lastModifiedDate":"2020-05-25"},{"lineNumber":21,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":22,"author":{"gitId":"-"},"content":"# run the program, feed commands from input.txt file and redirect the output to the ACTUAL.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":23,"author":{"gitId":"e0958902"},"content":"java -classpath ../bin Lotes \u003c input.txt \u003e ACTUAL.TXT","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":25,"author":{"gitId":"-"},"content":"# convert to UNIX format","lastModifiedDate":"2020-05-25"},{"lineNumber":26,"author":{"gitId":"-"},"content":"cp EXPECTED.TXT EXPECTED-UNIX.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":27,"author":{"gitId":"-"},"content":"dos2unix ACTUAL.TXT EXPECTED-UNIX.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":28,"author":{"gitId":"-"},"content":"","lastModifiedDate":"2020-05-25"},{"lineNumber":29,"author":{"gitId":"-"},"content":"# compare the output to the expected output","lastModifiedDate":"2020-05-25"},{"lineNumber":30,"author":{"gitId":"-"},"content":"diff ACTUAL.TXT EXPECTED-UNIX.TXT","lastModifiedDate":"2020-05-25"},{"lineNumber":31,"author":{"gitId":"-"},"content":"if [ $? -eq 0 ]","lastModifiedDate":"2020-05-25"},{"lineNumber":32,"author":{"gitId":"-"},"content":"then","lastModifiedDate":"2020-05-25"},{"lineNumber":33,"author":{"gitId":"-"},"content":" echo \"Test result: PASSED\"","lastModifiedDate":"2020-05-25"},{"lineNumber":34,"author":{"gitId":"-"},"content":" exit 0","lastModifiedDate":"2020-05-25"},{"lineNumber":35,"author":{"gitId":"-"},"content":"else","lastModifiedDate":"2020-05-25"},{"lineNumber":36,"author":{"gitId":"-"},"content":" echo \"Test result: FAILED\"","lastModifiedDate":"2020-05-25"},{"lineNumber":37,"author":{"gitId":"-"},"content":" exit 1","lastModifiedDate":"2020-05-25"},{"lineNumber":38,"author":{"gitId":"-"},"content":"fi","lastModifiedDate":"2020-05-25"}],"authorContributionMap":{"e0958902":1,"-":37}}] diff --git a/e0958902_ip_master/commits.json b/e0958902_ip_master/commits.json index 60315198..c4e7a2a9 100644 --- a/e0958902_ip_master/commits.json +++ b/e0958902_ip_master/commits.json @@ -1 +1 @@ -{"authorDailyContributionsMap":{"e0958902":[{"date":"2024-01-28","commitResults":[{"hash":"f70f8141538c5047166b715d411026cff90d8ae6","isMergeCommit":false,"messageTitle":"Remove given Duke template","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":6}}},{"hash":"8c5b44b52ee242ca2504d162def2a04e31e3cbfd","isMergeCommit":false,"messageTitle":"Rename chatbot to Lotes","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":2,"deletions":1}}},{"hash":"903c6f2dfa33638db7cfb95d7092e68a0d8e216d","isMergeCommit":false,"messageTitle":"Add greet message to chatbot","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":2,"deletions":0}}},{"hash":"f6545873966666d46946ed40a62c8f60b8da2eff","isMergeCommit":false,"messageTitle":"Add exit message to chatbot","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":2,"deletions":0}}},{"hash":"add71263f006445cbf5ed2998651184732eafbcd","isMergeCommit":false,"messageTitle":"Rename Duke.java to Lotes.java","messageBody":"","tags":["Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1}}},{"hash":"1560ae9bdf3c9c5dd94a37d5f062193e0e0008e7","isMergeCommit":false,"messageTitle":"README.md: update Duke to Lotes","messageBody":"","fileTypesAndContributionMap":{"md":{"insertions":3,"deletions":9}}},{"hash":"28155853c73be14ba2532f1e08979b3d0173a5c5","isMergeCommit":false,"messageTitle":"Add echo command entered by user","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":11,"deletions":6}}},{"hash":"9d694fb025c9ce953a747f2ef00a9124c43f8d84","isMergeCommit":false,"messageTitle":"Update echo command entered to exit when receive command bye","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":4,"deletions":1}}},{"hash":"f798d497cc91f59eac78e73f1b2274bcedd9b485","isMergeCommit":false,"messageTitle":"Update user input command to exit","messageBody":"","tags":["Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":2,"deletions":1}}}]},{"date":"2024-01-29","commitResults":[{"hash":"51e2441d2fc896052805f60c9e7a9691d68e402a","isMergeCommit":false,"messageTitle":"Add store and display of user input","messageBody":"","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":30,"deletions":6}}},{"hash":"0ea55f69ef703ce0a6b2da95227ec67561981b2c","isMergeCommit":false,"messageTitle":"Update greetings message","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":7,"deletions":2}}},{"hash":"42bfbcfae5bd80b2547c0b774240ed7f6adaacfa","isMergeCommit":false,"messageTitle":"Add Task.java","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":2,"deletions":0}}},{"hash":"b751167a18e89ac5b60eda3872e6c631fb6e72ed","isMergeCommit":false,"messageTitle":"README.md tweak template text","messageBody":"","fileTypesAndContributionMap":{"md":{"insertions":8,"deletions":2}}}]},{"date":"2024-01-30","commitResults":[{"hash":"56b1b9c03eaa48fd091a9b752670e16fceb2bcb0","isMergeCommit":false,"messageTitle":"Task.java: update Task class to represent user tasks","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":15,"deletions":0}}},{"hash":"e1faee197c26ec708db6dd3bf4db2801af82df6e","isMergeCommit":false,"messageTitle":"Add ability to mark tasks as done","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":27,"deletions":14}}}]},{"date":"2024-01-31","commitResults":[{"hash":"494aed58b7b643c52490fa2b7b8080ca096979e2","isMergeCommit":false,"messageTitle":"Add ability to mark tasks as not done","messageBody":"","tags":["Level-3"],"fileTypesAndContributionMap":{"java":{"insertions":11,"deletions":0}}},{"hash":"6b657c4660aa5bbba6877d0041bca1da68d74819","isMergeCommit":false,"messageTitle":"Tweak code to be compliant with coding standards","messageBody":"","tags":["A-CodingStandard"],"fileTypesAndContributionMap":{"java":{"insertions":102,"deletions":62}}}]},{"date":"2024-02-09","commitResults":[{"hash":"da3f257ca0162cb7e1042923f7a9e8a57db793ad","isMergeCommit":false,"messageTitle":"Add toDos, Events, and Deadlines functionality","messageBody":"","tags":["Level-4"],"fileTypesAndContributionMap":{"java":{"insertions":208,"deletions":87}}}]}]},"authorFileTypeContributionMap":{"e0958902":{"java":248,"md":8,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"e0958902":4929.9004},"authorDisplayNameMap":{"e0958902":"CS2113T-T09-1 ERIC..G LI"}} +{"authorDailyContributionsMap":{"e0958902":[{"date":"2024-01-28","commitResults":[{"hash":"f70f8141538c5047166b715d411026cff90d8ae6","isMergeCommit":false,"messageTitle":"Remove given Duke template","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":6}}},{"hash":"8c5b44b52ee242ca2504d162def2a04e31e3cbfd","isMergeCommit":false,"messageTitle":"Rename chatbot to Lotes","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":2,"deletions":1}}},{"hash":"903c6f2dfa33638db7cfb95d7092e68a0d8e216d","isMergeCommit":false,"messageTitle":"Add greet message to chatbot","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":2,"deletions":0}}},{"hash":"f6545873966666d46946ed40a62c8f60b8da2eff","isMergeCommit":false,"messageTitle":"Add exit message to chatbot","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":2,"deletions":0}}},{"hash":"add71263f006445cbf5ed2998651184732eafbcd","isMergeCommit":false,"messageTitle":"Rename Duke.java to Lotes.java","messageBody":"","tags":["Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1}}},{"hash":"1560ae9bdf3c9c5dd94a37d5f062193e0e0008e7","isMergeCommit":false,"messageTitle":"README.md: update Duke to Lotes","messageBody":"","fileTypesAndContributionMap":{"md":{"insertions":3,"deletions":9}}},{"hash":"28155853c73be14ba2532f1e08979b3d0173a5c5","isMergeCommit":false,"messageTitle":"Add echo command entered by user","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":11,"deletions":6}}},{"hash":"9d694fb025c9ce953a747f2ef00a9124c43f8d84","isMergeCommit":false,"messageTitle":"Update echo command entered to exit when receive command bye","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":4,"deletions":1}}},{"hash":"f798d497cc91f59eac78e73f1b2274bcedd9b485","isMergeCommit":false,"messageTitle":"Update user input command to exit","messageBody":"","tags":["Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":2,"deletions":1}}}]},{"date":"2024-01-29","commitResults":[{"hash":"51e2441d2fc896052805f60c9e7a9691d68e402a","isMergeCommit":false,"messageTitle":"Add store and display of user input","messageBody":"","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":30,"deletions":6}}},{"hash":"0ea55f69ef703ce0a6b2da95227ec67561981b2c","isMergeCommit":false,"messageTitle":"Update greetings message","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":7,"deletions":2}}},{"hash":"42bfbcfae5bd80b2547c0b774240ed7f6adaacfa","isMergeCommit":false,"messageTitle":"Add Task.java","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":2,"deletions":0}}},{"hash":"b751167a18e89ac5b60eda3872e6c631fb6e72ed","isMergeCommit":false,"messageTitle":"README.md tweak template text","messageBody":"","fileTypesAndContributionMap":{"md":{"insertions":8,"deletions":2}}}]},{"date":"2024-01-30","commitResults":[{"hash":"56b1b9c03eaa48fd091a9b752670e16fceb2bcb0","isMergeCommit":false,"messageTitle":"Task.java: update Task class to represent user tasks","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":15,"deletions":0}}},{"hash":"e1faee197c26ec708db6dd3bf4db2801af82df6e","isMergeCommit":false,"messageTitle":"Add ability to mark tasks as done","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":27,"deletions":14}}}]},{"date":"2024-01-31","commitResults":[{"hash":"494aed58b7b643c52490fa2b7b8080ca096979e2","isMergeCommit":false,"messageTitle":"Add ability to mark tasks as not done","messageBody":"","tags":["Level-3"],"fileTypesAndContributionMap":{"java":{"insertions":11,"deletions":0}}},{"hash":"6b657c4660aa5bbba6877d0041bca1da68d74819","isMergeCommit":false,"messageTitle":"Tweak code to be compliant with coding standards","messageBody":"","tags":["A-CodingStandard"],"fileTypesAndContributionMap":{"java":{"insertions":102,"deletions":62}}}]},{"date":"2024-02-09","commitResults":[{"hash":"da3f257ca0162cb7e1042923f7a9e8a57db793ad","isMergeCommit":false,"messageTitle":"Add toDos, Events, and Deadlines functionality","messageBody":"","tags":["Level-4"],"fileTypesAndContributionMap":{"java":{"insertions":208,"deletions":87}}},{"hash":"dfa1b4100e598a5b2c570dbee9dab19db3fc26d4","isMergeCommit":false,"messageTitle":"Add Automated Test UI Testing","messageBody":"","tags":["A-TextUiTesting"],"fileTypesAndContributionMap":{"txt":{"insertions":4,"deletions":0},"java":{"insertions":2,"deletions":5},"bat":{"insertions":1,"deletions":1},"sh":{"insertions":1,"deletions":1}}},{"hash":"eab311dd21b05e54500ebc7d77cec4024173a3c3","isMergeCommit":false,"messageTitle":"Update Automated Test UI Testing","messageBody":"","fileTypesAndContributionMap":{"txt":{"insertions":2,"deletions":0}}},{"hash":"66ed27dbd98d2cf67dbf52494ad07bd392f344d6","isMergeCommit":false,"messageTitle":"Update use of ArrayList of Objects to Array of Objects","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":59,"deletions":62}}},{"hash":"925904234658df78f22248d9f1c7c15d3de28920","isMergeCommit":false,"messageTitle":"Revert \"Update use of ArrayList of Objects to Array of Objects\"","messageBody":"This reverts commit 3edc25bae21837ad1f681e1fafc32728dccf4094.\n","fileTypesAndContributionMap":{"java":{"insertions":62,"deletions":59}}},{"hash":"ce175e0abfa706173fa5371ca7ba5d700168a89d","isMergeCommit":false,"messageTitle":"Update use of ArrayList of Objects to Array of Objects","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":308,"deletions":67}}},{"hash":"381f88d0f674367f7d779b725ad15469b32d67bf","isMergeCommit":false,"messageTitle":"Fix bug on displaying wrong number of tasks","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":4,"deletions":4}}},{"hash":"d24b415aefb09a0b24547fe9e19428c1a951e87f","isMergeCommit":false,"messageTitle":"Improve Code Quality on Readability and Refectoring","messageBody":"","tags":["A-CodeQuality"],"fileTypesAndContributionMap":{"java":{"insertions":73,"deletions":48}}}]}]},"authorFileTypeContributionMap":{"e0958902":{"java":511,"md":8,"fxml":0,"sh":1,"bat":1,"gradle":0,"txt":6}},"authorContributionVariance":{"e0958902":48646.336},"authorDisplayNameMap":{"e0958902":"CS2113T-T09-1 ERIC..G LI"}} diff --git a/hafizuddin-a_ip_master/authorship.json b/hafizuddin-a_ip_master/authorship.json index 7dcb0a81..f91b1711 100644 --- a/hafizuddin-a_ip_master/authorship.json +++ b/hafizuddin-a_ip_master/authorship.json @@ -1 +1 @@ -[{"path":"src/main/java/Cody.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"hafizuddin-a"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-01-29"},{"lineNumber":2,"author":{"gitId":"hafizuddin-a"},"content":"public class Cody {","lastModifiedDate":"2024-01-23"},{"lineNumber":3,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-29"},{"lineNumber":4,"author":{"gitId":"hafizuddin-a"},"content":" private static void echo() {","lastModifiedDate":"2024-01-29"},{"lineNumber":5,"author":{"gitId":"hafizuddin-a"},"content":" Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-01-29"},{"lineNumber":6,"author":{"gitId":"hafizuddin-a"},"content":" String input \u003d in.nextLine();","lastModifiedDate":"2024-01-29"},{"lineNumber":7,"author":{"gitId":"hafizuddin-a"},"content":" while (!input.equals(\"bye\")) {","lastModifiedDate":"2024-01-29"},{"lineNumber":8,"author":{"gitId":"hafizuddin-a"},"content":" System.out.println(\"____________________________________________________________\\n\"","lastModifiedDate":"2024-01-30"},{"lineNumber":9,"author":{"gitId":"hafizuddin-a"},"content":" + \" \" + input + \"\\n\"","lastModifiedDate":"2024-01-30"},{"lineNumber":10,"author":{"gitId":"hafizuddin-a"},"content":" + \"_____________________________________________________________\");","lastModifiedDate":"2024-01-30"},{"lineNumber":11,"author":{"gitId":"hafizuddin-a"},"content":" input \u003d in.nextLine();","lastModifiedDate":"2024-01-29"},{"lineNumber":12,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-29"},{"lineNumber":13,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-29"},{"lineNumber":14,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-29"},{"lineNumber":15,"author":{"gitId":"hafizuddin-a"},"content":" private static void createList() {","lastModifiedDate":"2024-01-29"},{"lineNumber":16,"author":{"gitId":"hafizuddin-a"},"content":" Task[] tasks \u003d new Task[100];","lastModifiedDate":"2024-01-30"},{"lineNumber":17,"author":{"gitId":"hafizuddin-a"},"content":" int taskCount \u003d 0;","lastModifiedDate":"2024-01-30"},{"lineNumber":18,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":19,"author":{"gitId":"hafizuddin-a"},"content":" Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-01-29"},{"lineNumber":20,"author":{"gitId":"hafizuddin-a"},"content":" String input \u003d in.nextLine();","lastModifiedDate":"2024-01-29"},{"lineNumber":21,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":22,"author":{"gitId":"hafizuddin-a"},"content":" while (!input.equals(\"bye\")) {","lastModifiedDate":"2024-01-29"},{"lineNumber":23,"author":{"gitId":"hafizuddin-a"},"content":" if (input.equals(\"list\")) {","lastModifiedDate":"2024-01-29"},{"lineNumber":24,"author":{"gitId":"hafizuddin-a"},"content":" printList(tasks, taskCount);","lastModifiedDate":"2024-01-30"},{"lineNumber":25,"author":{"gitId":"hafizuddin-a"},"content":" } else if (input.startsWith(\"mark\")) {","lastModifiedDate":"2024-01-30"},{"lineNumber":26,"author":{"gitId":"hafizuddin-a"},"content":" String[] words \u003d input.split(\" \");","lastModifiedDate":"2024-01-30"},{"lineNumber":27,"author":{"gitId":"hafizuddin-a"},"content":" int index \u003d Integer.parseInt(words[1]) - 1;","lastModifiedDate":"2024-01-30"},{"lineNumber":28,"author":{"gitId":"hafizuddin-a"},"content":" tasks[index].markDone();","lastModifiedDate":"2024-01-30"},{"lineNumber":29,"author":{"gitId":"hafizuddin-a"},"content":" markDone(tasks, index);","lastModifiedDate":"2024-01-30"},{"lineNumber":30,"author":{"gitId":"hafizuddin-a"},"content":" } else if (input.startsWith(\"unmark\")) {","lastModifiedDate":"2024-01-30"},{"lineNumber":31,"author":{"gitId":"hafizuddin-a"},"content":" String[] words \u003d input.split(\" \");","lastModifiedDate":"2024-01-30"},{"lineNumber":32,"author":{"gitId":"hafizuddin-a"},"content":" int index \u003d Integer.parseInt(words[1]) - 1;","lastModifiedDate":"2024-01-30"},{"lineNumber":33,"author":{"gitId":"hafizuddin-a"},"content":" tasks[index].markUndone();","lastModifiedDate":"2024-01-30"},{"lineNumber":34,"author":{"gitId":"hafizuddin-a"},"content":" markUndone(tasks, index);","lastModifiedDate":"2024-01-30"},{"lineNumber":35,"author":{"gitId":"hafizuddin-a"},"content":" } else {","lastModifiedDate":"2024-01-29"},{"lineNumber":36,"author":{"gitId":"hafizuddin-a"},"content":" Task task \u003d new Task(input);","lastModifiedDate":"2024-01-30"},{"lineNumber":37,"author":{"gitId":"hafizuddin-a"},"content":" addTask(tasks, task, taskCount);","lastModifiedDate":"2024-01-30"},{"lineNumber":38,"author":{"gitId":"hafizuddin-a"},"content":" taskCount++;","lastModifiedDate":"2024-01-30"},{"lineNumber":39,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-29"},{"lineNumber":40,"author":{"gitId":"hafizuddin-a"},"content":" input \u003d in.nextLine();","lastModifiedDate":"2024-01-29"},{"lineNumber":41,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-29"},{"lineNumber":42,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-29"},{"lineNumber":43,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-29"},{"lineNumber":44,"author":{"gitId":"hafizuddin-a"},"content":" public static void printList(Task[] tasks, int taskCount) {","lastModifiedDate":"2024-01-30"},{"lineNumber":45,"author":{"gitId":"hafizuddin-a"},"content":" System.out.println(\"______________________________________________________________\\n\"","lastModifiedDate":"2024-01-30"},{"lineNumber":46,"author":{"gitId":"hafizuddin-a"},"content":" + \" Here are the tasks in your list:\");","lastModifiedDate":"2024-01-30"},{"lineNumber":47,"author":{"gitId":"hafizuddin-a"},"content":" for (int i \u003d 0; i \u003c taskCount; i++) {","lastModifiedDate":"2024-01-30"},{"lineNumber":48,"author":{"gitId":"hafizuddin-a"},"content":" System.out.println(\" \" + (i + 1) + \".[\" + tasks[i].getStatusIcon() + \"] \" + tasks[i].getDescription());","lastModifiedDate":"2024-01-30"},{"lineNumber":49,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":50,"author":{"gitId":"hafizuddin-a"},"content":" System.out.println(\"_____________________________________________________________\");","lastModifiedDate":"2024-01-30"},{"lineNumber":51,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":52,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":53,"author":{"gitId":"hafizuddin-a"},"content":" public static void markDone(Task[] tasks, int index) {","lastModifiedDate":"2024-01-30"},{"lineNumber":54,"author":{"gitId":"hafizuddin-a"},"content":" System.out.println(\"______________________________________________________________\\n\"","lastModifiedDate":"2024-01-30"},{"lineNumber":55,"author":{"gitId":"hafizuddin-a"},"content":" + \" Good job! I\u0027ve marked this task as done:\\n\"","lastModifiedDate":"2024-01-30"},{"lineNumber":56,"author":{"gitId":"hafizuddin-a"},"content":" + \" [X] \" + tasks[index].getDescription() + \"\\n\"","lastModifiedDate":"2024-01-30"},{"lineNumber":57,"author":{"gitId":"hafizuddin-a"},"content":" + \"_____________________________________________________________\");","lastModifiedDate":"2024-01-30"},{"lineNumber":58,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":59,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":60,"author":{"gitId":"hafizuddin-a"},"content":" public static void markUndone(Task[] tasks, int index) {","lastModifiedDate":"2024-01-30"},{"lineNumber":61,"author":{"gitId":"hafizuddin-a"},"content":" System.out.println(\"______________________________________________________________\\n\"","lastModifiedDate":"2024-01-30"},{"lineNumber":62,"author":{"gitId":"hafizuddin-a"},"content":" + \" Okay! I\u0027ve marked this task as not done yet:\\n\"","lastModifiedDate":"2024-01-30"},{"lineNumber":63,"author":{"gitId":"hafizuddin-a"},"content":" + \" [ ] \" + tasks[index].getDescription() + \"\\n\"","lastModifiedDate":"2024-01-30"},{"lineNumber":64,"author":{"gitId":"hafizuddin-a"},"content":" + \"_____________________________________________________________\");","lastModifiedDate":"2024-01-30"},{"lineNumber":65,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":66,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":67,"author":{"gitId":"hafizuddin-a"},"content":" public static void addTask(Task[] tasks, Task task, int taskCount) {","lastModifiedDate":"2024-01-30"},{"lineNumber":68,"author":{"gitId":"hafizuddin-a"},"content":" tasks[taskCount] \u003d task;","lastModifiedDate":"2024-01-30"},{"lineNumber":69,"author":{"gitId":"hafizuddin-a"},"content":" System.out.println(\"______________________________________________________________\\n\"","lastModifiedDate":"2024-01-30"},{"lineNumber":70,"author":{"gitId":"hafizuddin-a"},"content":" + \" Got it. I\u0027ve added this task to your list:\\n\"","lastModifiedDate":"2024-01-30"},{"lineNumber":71,"author":{"gitId":"hafizuddin-a"},"content":" + \" [ ] \" + task.getDescription() + \"\\n\"","lastModifiedDate":"2024-01-30"},{"lineNumber":72,"author":{"gitId":"hafizuddin-a"},"content":" + \"_____________________________________________________________\");","lastModifiedDate":"2024-01-30"},{"lineNumber":73,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":74,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":75,"author":{"gitId":"hafizuddin-a"},"content":" private static void greet() {","lastModifiedDate":"2024-01-29"},{"lineNumber":76,"author":{"gitId":"hafizuddin-a"},"content":" String greet \u003d \" ____________________________________________________________\\n\"","lastModifiedDate":"2024-01-30"},{"lineNumber":77,"author":{"gitId":"hafizuddin-a"},"content":" + \" Hello! I\u0027m Cody\\n\"","lastModifiedDate":"2024-01-30"},{"lineNumber":78,"author":{"gitId":"hafizuddin-a"},"content":" + \" Tell me your tasks and I will create a task list for you\\n\"","lastModifiedDate":"2024-01-30"},{"lineNumber":79,"author":{"gitId":"hafizuddin-a"},"content":" + \"_____________________________________________________________\\n\";","lastModifiedDate":"2024-01-30"},{"lineNumber":80,"author":{"gitId":"hafizuddin-a"},"content":" System.out.println(greet);","lastModifiedDate":"2024-01-29"},{"lineNumber":81,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-29"},{"lineNumber":82,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-29"},{"lineNumber":83,"author":{"gitId":"hafizuddin-a"},"content":" private static void exit() {","lastModifiedDate":"2024-01-29"},{"lineNumber":84,"author":{"gitId":"hafizuddin-a"},"content":" String exit \u003d \"_____________________________________________________________\\n\"","lastModifiedDate":"2024-01-30"},{"lineNumber":85,"author":{"gitId":"hafizuddin-a"},"content":" + \" Bye. Hope to see you again soon!\\n\"","lastModifiedDate":"2024-01-30"},{"lineNumber":86,"author":{"gitId":"hafizuddin-a"},"content":" + \"_____________________________________________________________\";","lastModifiedDate":"2024-01-30"},{"lineNumber":87,"author":{"gitId":"hafizuddin-a"},"content":" System.out.println(exit);","lastModifiedDate":"2024-01-29"},{"lineNumber":88,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-29"},{"lineNumber":89,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-23"},{"lineNumber":90,"author":{"gitId":"hafizuddin-a"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-01-29"},{"lineNumber":91,"author":{"gitId":"hafizuddin-a"},"content":" greet();","lastModifiedDate":"2024-01-29"},{"lineNumber":92,"author":{"gitId":"hafizuddin-a"},"content":" createList();","lastModifiedDate":"2024-01-29"},{"lineNumber":93,"author":{"gitId":"hafizuddin-a"},"content":" exit();","lastModifiedDate":"2024-01-29"},{"lineNumber":94,"author":{"gitId":"-"},"content":" }","lastModifiedDate":"2019-07-29"},{"lineNumber":95,"author":{"gitId":"-"},"content":"}","lastModifiedDate":"2019-07-29"},{"lineNumber":96,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-29"}],"authorContributionMap":{"hafizuddin-a":94,"-":2}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"hafizuddin-a"},"content":"public class Task {","lastModifiedDate":"2024-01-30"},{"lineNumber":2,"author":{"gitId":"hafizuddin-a"},"content":" protected String description;","lastModifiedDate":"2024-01-30"},{"lineNumber":3,"author":{"gitId":"hafizuddin-a"},"content":" protected boolean isDone;","lastModifiedDate":"2024-01-30"},{"lineNumber":4,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":5,"author":{"gitId":"hafizuddin-a"},"content":" public Task(String description) {","lastModifiedDate":"2024-01-30"},{"lineNumber":6,"author":{"gitId":"hafizuddin-a"},"content":" this.description \u003d description;","lastModifiedDate":"2024-01-30"},{"lineNumber":7,"author":{"gitId":"hafizuddin-a"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-01-30"},{"lineNumber":8,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":9,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":10,"author":{"gitId":"hafizuddin-a"},"content":" public String getDescription() {","lastModifiedDate":"2024-01-30"},{"lineNumber":11,"author":{"gitId":"hafizuddin-a"},"content":" return description;","lastModifiedDate":"2024-01-30"},{"lineNumber":12,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":13,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":14,"author":{"gitId":"hafizuddin-a"},"content":" public String getStatusIcon() {","lastModifiedDate":"2024-01-30"},{"lineNumber":15,"author":{"gitId":"hafizuddin-a"},"content":" return (isDone ? \"X\" : \" \"); // mark done task with X","lastModifiedDate":"2024-01-30"},{"lineNumber":16,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":17,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":18,"author":{"gitId":"hafizuddin-a"},"content":" public void markDone() {","lastModifiedDate":"2024-01-30"},{"lineNumber":19,"author":{"gitId":"hafizuddin-a"},"content":" this.isDone \u003d true;","lastModifiedDate":"2024-01-30"},{"lineNumber":20,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":21,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":22,"author":{"gitId":"hafizuddin-a"},"content":" public void markUndone() {","lastModifiedDate":"2024-01-30"},{"lineNumber":23,"author":{"gitId":"hafizuddin-a"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-01-30"},{"lineNumber":24,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":25,"author":{"gitId":"hafizuddin-a"},"content":"}","lastModifiedDate":"2024-01-30"}],"authorContributionMap":{"hafizuddin-a":25}}] +[{"path":"src/main/java/Cody.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"hafizuddin-a"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-01-29"},{"lineNumber":2,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"hafizuddin-a"},"content":"public class Cody {","lastModifiedDate":"2024-01-23"},{"lineNumber":4,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-29"},{"lineNumber":5,"author":{"gitId":"hafizuddin-a"},"content":" // Constants for repeated strings","lastModifiedDate":"2024-02-07"},{"lineNumber":6,"author":{"gitId":"hafizuddin-a"},"content":" private static final String BORDER \u003d \"_______________________________________________________________\\n\";","lastModifiedDate":"2024-02-07"},{"lineNumber":7,"author":{"gitId":"hafizuddin-a"},"content":" private static final String GREET_MESSAGE \u003d \"Hey there! I\u0027m Cody, your personal task manager\\n\"","lastModifiedDate":"2024-02-07"},{"lineNumber":8,"author":{"gitId":"hafizuddin-a"},"content":" + \"Tell me your tasks and I will create a task list for you\\n\";","lastModifiedDate":"2024-02-07"},{"lineNumber":9,"author":{"gitId":"hafizuddin-a"},"content":" private static final String EXIT_MESSAGE \u003d \"Bye. Hope to see you again soon!\\n\";","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":11,"author":{"gitId":"hafizuddin-a"},"content":" private static void printMessage(String message) {","lastModifiedDate":"2024-02-07"},{"lineNumber":12,"author":{"gitId":"hafizuddin-a"},"content":" System.out.println(BORDER + message + BORDER);","lastModifiedDate":"2024-02-07"},{"lineNumber":13,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":14,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":15,"author":{"gitId":"hafizuddin-a"},"content":" // greets user","lastModifiedDate":"2024-02-07"},{"lineNumber":16,"author":{"gitId":"hafizuddin-a"},"content":" private static void greet() {","lastModifiedDate":"2024-01-29"},{"lineNumber":17,"author":{"gitId":"hafizuddin-a"},"content":" printMessage(GREET_MESSAGE);","lastModifiedDate":"2024-02-07"},{"lineNumber":18,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-29"},{"lineNumber":19,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-29"},{"lineNumber":20,"author":{"gitId":"hafizuddin-a"},"content":" // exits the program","lastModifiedDate":"2024-02-07"},{"lineNumber":21,"author":{"gitId":"hafizuddin-a"},"content":" private static void exit() {","lastModifiedDate":"2024-01-29"},{"lineNumber":22,"author":{"gitId":"hafizuddin-a"},"content":" printMessage(EXIT_MESSAGE);","lastModifiedDate":"2024-02-07"},{"lineNumber":23,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-29"},{"lineNumber":24,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-23"},{"lineNumber":25,"author":{"gitId":"hafizuddin-a"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-01-29"},{"lineNumber":26,"author":{"gitId":"hafizuddin-a"},"content":" greet();","lastModifiedDate":"2024-01-29"},{"lineNumber":27,"author":{"gitId":"hafizuddin-a"},"content":" TaskManager taskManager \u003d new TaskManager(); // Assuming TaskManager handles its tasks","lastModifiedDate":"2024-02-07"},{"lineNumber":28,"author":{"gitId":"hafizuddin-a"},"content":" exit();","lastModifiedDate":"2024-01-29"},{"lineNumber":29,"author":{"gitId":"-"},"content":" }","lastModifiedDate":"2019-07-29"},{"lineNumber":30,"author":{"gitId":"-"},"content":"}","lastModifiedDate":"2019-07-29"},{"lineNumber":31,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-29"},{"lineNumber":32,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-07"}],"authorContributionMap":{"hafizuddin-a":30,"-":2}},{"path":"src/main/java/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"hafizuddin-a"},"content":"public class Deadline extends Task {","lastModifiedDate":"2024-02-05"},{"lineNumber":2,"author":{"gitId":"hafizuddin-a"},"content":" protected String by;","lastModifiedDate":"2024-02-05"},{"lineNumber":3,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":4,"author":{"gitId":"hafizuddin-a"},"content":" public Deadline(String description, String by) {","lastModifiedDate":"2024-02-05"},{"lineNumber":5,"author":{"gitId":"hafizuddin-a"},"content":" super(description);","lastModifiedDate":"2024-02-05"},{"lineNumber":6,"author":{"gitId":"hafizuddin-a"},"content":" this.by \u003d by;","lastModifiedDate":"2024-02-05"},{"lineNumber":7,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":8,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":9,"author":{"gitId":"hafizuddin-a"},"content":" @Override","lastModifiedDate":"2024-02-05"},{"lineNumber":10,"author":{"gitId":"hafizuddin-a"},"content":" public String getDescription() {","lastModifiedDate":"2024-02-05"},{"lineNumber":11,"author":{"gitId":"hafizuddin-a"},"content":" return description + \" (by: \" + by + \")\";","lastModifiedDate":"2024-02-05"},{"lineNumber":12,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":13,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":14,"author":{"gitId":"hafizuddin-a"},"content":" @Override","lastModifiedDate":"2024-02-05"},{"lineNumber":15,"author":{"gitId":"hafizuddin-a"},"content":" public String getTaskType() {","lastModifiedDate":"2024-02-06"},{"lineNumber":16,"author":{"gitId":"hafizuddin-a"},"content":" return \"D\";","lastModifiedDate":"2024-02-06"},{"lineNumber":17,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":18,"author":{"gitId":"hafizuddin-a"},"content":"}","lastModifiedDate":"2024-02-05"}],"authorContributionMap":{"hafizuddin-a":18}},{"path":"src/main/java/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"hafizuddin-a"},"content":"public class Event extends Task{","lastModifiedDate":"2024-02-05"},{"lineNumber":2,"author":{"gitId":"hafizuddin-a"},"content":" protected String from;","lastModifiedDate":"2024-02-06"},{"lineNumber":3,"author":{"gitId":"hafizuddin-a"},"content":" protected String to;","lastModifiedDate":"2024-02-05"},{"lineNumber":4,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":5,"author":{"gitId":"hafizuddin-a"},"content":" public Event(String description, String from, String to) {","lastModifiedDate":"2024-02-06"},{"lineNumber":6,"author":{"gitId":"hafizuddin-a"},"content":" super(description);","lastModifiedDate":"2024-02-05"},{"lineNumber":7,"author":{"gitId":"hafizuddin-a"},"content":" this.from \u003d from;","lastModifiedDate":"2024-02-06"},{"lineNumber":8,"author":{"gitId":"hafizuddin-a"},"content":" this.to \u003d to;","lastModifiedDate":"2024-02-06"},{"lineNumber":9,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":10,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":11,"author":{"gitId":"hafizuddin-a"},"content":" @Override","lastModifiedDate":"2024-02-05"},{"lineNumber":12,"author":{"gitId":"hafizuddin-a"},"content":" public String getDescription() {","lastModifiedDate":"2024-02-05"},{"lineNumber":13,"author":{"gitId":"hafizuddin-a"},"content":" return description + \" (from: \" + from + \" to: \" + to + \")\";","lastModifiedDate":"2024-02-06"},{"lineNumber":14,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":15,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":16,"author":{"gitId":"hafizuddin-a"},"content":" @Override","lastModifiedDate":"2024-02-05"},{"lineNumber":17,"author":{"gitId":"hafizuddin-a"},"content":" public String getTaskType() {","lastModifiedDate":"2024-02-06"},{"lineNumber":18,"author":{"gitId":"hafizuddin-a"},"content":" return \"E\";","lastModifiedDate":"2024-02-06"},{"lineNumber":19,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":20,"author":{"gitId":"hafizuddin-a"},"content":"}","lastModifiedDate":"2024-02-05"}],"authorContributionMap":{"hafizuddin-a":20}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"hafizuddin-a"},"content":"public class Task {","lastModifiedDate":"2024-01-30"},{"lineNumber":2,"author":{"gitId":"hafizuddin-a"},"content":" protected String description;","lastModifiedDate":"2024-01-30"},{"lineNumber":3,"author":{"gitId":"hafizuddin-a"},"content":" protected boolean isDone;","lastModifiedDate":"2024-01-30"},{"lineNumber":4,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":5,"author":{"gitId":"hafizuddin-a"},"content":" protected String taskType;","lastModifiedDate":"2024-02-06"},{"lineNumber":6,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":7,"author":{"gitId":"hafizuddin-a"},"content":" public Task(String description) {","lastModifiedDate":"2024-01-30"},{"lineNumber":8,"author":{"gitId":"hafizuddin-a"},"content":" this.description \u003d description;","lastModifiedDate":"2024-01-30"},{"lineNumber":9,"author":{"gitId":"hafizuddin-a"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-01-30"},{"lineNumber":10,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":11,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":12,"author":{"gitId":"hafizuddin-a"},"content":" public String getDescription() {","lastModifiedDate":"2024-01-30"},{"lineNumber":13,"author":{"gitId":"hafizuddin-a"},"content":" return description;","lastModifiedDate":"2024-01-30"},{"lineNumber":14,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":15,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":16,"author":{"gitId":"hafizuddin-a"},"content":" public String getStatusIcon() {","lastModifiedDate":"2024-01-30"},{"lineNumber":17,"author":{"gitId":"hafizuddin-a"},"content":" return (isDone ? \"X\" : \" \"); // mark done task with X","lastModifiedDate":"2024-01-30"},{"lineNumber":18,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":19,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-01-30"},{"lineNumber":20,"author":{"gitId":"hafizuddin-a"},"content":" public void markTask(boolean isDone) {","lastModifiedDate":"2024-02-05"},{"lineNumber":21,"author":{"gitId":"hafizuddin-a"},"content":" this.isDone \u003d isDone;","lastModifiedDate":"2024-02-05"},{"lineNumber":22,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-01-30"},{"lineNumber":23,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":24,"author":{"gitId":"hafizuddin-a"},"content":" public String getTaskType() {","lastModifiedDate":"2024-02-06"},{"lineNumber":25,"author":{"gitId":"hafizuddin-a"},"content":" return taskType;","lastModifiedDate":"2024-02-06"},{"lineNumber":26,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":27,"author":{"gitId":"hafizuddin-a"},"content":"}","lastModifiedDate":"2024-01-30"}],"authorContributionMap":{"hafizuddin-a":27}},{"path":"src/main/java/TaskManager.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"hafizuddin-a"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-05"},{"lineNumber":2,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"hafizuddin-a"},"content":"public class TaskManager {","lastModifiedDate":"2024-02-05"},{"lineNumber":4,"author":{"gitId":"hafizuddin-a"},"content":" private Task[] tasks;","lastModifiedDate":"2024-02-05"},{"lineNumber":5,"author":{"gitId":"hafizuddin-a"},"content":" private int taskCount;","lastModifiedDate":"2024-02-05"},{"lineNumber":6,"author":{"gitId":"hafizuddin-a"},"content":" private static final String BORDER \u003d \"______________________________________________________________\\n\";","lastModifiedDate":"2024-02-07"},{"lineNumber":7,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":8,"author":{"gitId":"hafizuddin-a"},"content":" private void printList() {","lastModifiedDate":"2024-02-05"},{"lineNumber":9,"author":{"gitId":"hafizuddin-a"},"content":" System.out.println(BORDER + \" Here are the tasks in your list:\");","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"hafizuddin-a"},"content":" for (int i \u003d 0; i \u003c taskCount; i++) {","lastModifiedDate":"2024-02-05"},{"lineNumber":11,"author":{"gitId":"hafizuddin-a"},"content":" System.out.println(\" \" + (i + 1) + \". [\" + tasks[i].getTaskType() + \"] \"","lastModifiedDate":"2024-02-06"},{"lineNumber":12,"author":{"gitId":"hafizuddin-a"},"content":" + \"[\" + tasks[i].getStatusIcon() + \"] \"","lastModifiedDate":"2024-02-06"},{"lineNumber":13,"author":{"gitId":"hafizuddin-a"},"content":" + tasks[i].getDescription());","lastModifiedDate":"2024-02-06"},{"lineNumber":14,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":15,"author":{"gitId":"hafizuddin-a"},"content":" System.out.println(BORDER);","lastModifiedDate":"2024-02-07"},{"lineNumber":16,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":17,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":18,"author":{"gitId":"hafizuddin-a"},"content":" private void markTask(int index) {","lastModifiedDate":"2024-02-07"},{"lineNumber":19,"author":{"gitId":"hafizuddin-a"},"content":" System.out.println(BORDER + \" Good job! I\u0027ve marked this task as done:\\n\"","lastModifiedDate":"2024-02-07"},{"lineNumber":20,"author":{"gitId":"hafizuddin-a"},"content":" + \" [\" + tasks[index].getStatusIcon() + \"] \" + tasks[index].getDescription() + \"\\n\"","lastModifiedDate":"2024-02-07"},{"lineNumber":21,"author":{"gitId":"hafizuddin-a"},"content":" + BORDER);","lastModifiedDate":"2024-02-07"},{"lineNumber":22,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":23,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":24,"author":{"gitId":"hafizuddin-a"},"content":" private void handleMarking(String input) {","lastModifiedDate":"2024-02-07"},{"lineNumber":25,"author":{"gitId":"hafizuddin-a"},"content":" String[] parts \u003d input.split(\" \");","lastModifiedDate":"2024-02-07"},{"lineNumber":26,"author":{"gitId":"hafizuddin-a"},"content":" int index \u003d Integer.parseInt(parts[1]) - 1;","lastModifiedDate":"2024-02-07"},{"lineNumber":27,"author":{"gitId":"hafizuddin-a"},"content":" boolean isDone \u003d input.startsWith(\"mark\");","lastModifiedDate":"2024-02-07"},{"lineNumber":28,"author":{"gitId":"hafizuddin-a"},"content":" tasks[index].markTask(isDone);","lastModifiedDate":"2024-02-07"},{"lineNumber":29,"author":{"gitId":"hafizuddin-a"},"content":" markTask(index);","lastModifiedDate":"2024-02-07"},{"lineNumber":30,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":31,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":32,"author":{"gitId":"hafizuddin-a"},"content":" // Adds a task based on the input provided.","lastModifiedDate":"2024-02-07"},{"lineNumber":33,"author":{"gitId":"hafizuddin-a"},"content":" private void addTask(String input) {","lastModifiedDate":"2024-02-07"},{"lineNumber":34,"author":{"gitId":"hafizuddin-a"},"content":" Task task \u003d createTaskFromInput(input);","lastModifiedDate":"2024-02-07"},{"lineNumber":35,"author":{"gitId":"hafizuddin-a"},"content":" if (task !\u003d null) {","lastModifiedDate":"2024-02-07"},{"lineNumber":36,"author":{"gitId":"hafizuddin-a"},"content":" tasks[taskCount] \u003d task;","lastModifiedDate":"2024-02-07"},{"lineNumber":37,"author":{"gitId":"hafizuddin-a"},"content":" taskCount++;","lastModifiedDate":"2024-02-07"},{"lineNumber":38,"author":{"gitId":"hafizuddin-a"},"content":" printTask(task);","lastModifiedDate":"2024-02-07"},{"lineNumber":39,"author":{"gitId":"hafizuddin-a"},"content":" } else {","lastModifiedDate":"2024-02-07"},{"lineNumber":40,"author":{"gitId":"hafizuddin-a"},"content":" System.out.println(\"Unknown task type. Please enter a todo, deadline or event task.\");","lastModifiedDate":"2024-02-07"},{"lineNumber":41,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":42,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":43,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":44,"author":{"gitId":"hafizuddin-a"},"content":" private Task createTaskFromInput(String input) {","lastModifiedDate":"2024-02-07"},{"lineNumber":45,"author":{"gitId":"hafizuddin-a"},"content":" if (input.startsWith(\"todo\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":46,"author":{"gitId":"hafizuddin-a"},"content":" return createTodoTask(input);","lastModifiedDate":"2024-02-07"},{"lineNumber":47,"author":{"gitId":"hafizuddin-a"},"content":" } else if (input.startsWith(\"deadline\")) {","lastModifiedDate":"2024-02-05"},{"lineNumber":48,"author":{"gitId":"hafizuddin-a"},"content":" return createDeadlineTask(input);","lastModifiedDate":"2024-02-07"},{"lineNumber":49,"author":{"gitId":"hafizuddin-a"},"content":" } else if (input.startsWith(\"event\")) {","lastModifiedDate":"2024-02-05"},{"lineNumber":50,"author":{"gitId":"hafizuddin-a"},"content":" return createEventTask(input);","lastModifiedDate":"2024-02-07"},{"lineNumber":51,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":52,"author":{"gitId":"hafizuddin-a"},"content":" return null; // Return null if the task type is unknown.","lastModifiedDate":"2024-02-07"},{"lineNumber":53,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":54,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":55,"author":{"gitId":"hafizuddin-a"},"content":" private Todo createTodoTask(String input) {","lastModifiedDate":"2024-02-07"},{"lineNumber":56,"author":{"gitId":"hafizuddin-a"},"content":" String description \u003d input.substring(5).trim(); // Removing \u0027todo \u0027 prefix.","lastModifiedDate":"2024-02-07"},{"lineNumber":57,"author":{"gitId":"hafizuddin-a"},"content":" return new Todo(description);","lastModifiedDate":"2024-02-07"},{"lineNumber":58,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":59,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":60,"author":{"gitId":"hafizuddin-a"},"content":" // Creates a Deadline task from the input.","lastModifiedDate":"2024-02-07"},{"lineNumber":61,"author":{"gitId":"hafizuddin-a"},"content":" private Deadline createDeadlineTask(String input) {","lastModifiedDate":"2024-02-07"},{"lineNumber":62,"author":{"gitId":"hafizuddin-a"},"content":" String[] deadlineDetails \u003d input.split(\" /by \", 2);","lastModifiedDate":"2024-02-07"},{"lineNumber":63,"author":{"gitId":"hafizuddin-a"},"content":" String description \u003d deadlineDetails[0].substring(9).trim(); // Removing \u0027deadline \u0027 prefix.","lastModifiedDate":"2024-02-07"},{"lineNumber":64,"author":{"gitId":"hafizuddin-a"},"content":" String by \u003d deadlineDetails.length \u003e 1 ? deadlineDetails[1] : \"No deadline specified\";","lastModifiedDate":"2024-02-07"},{"lineNumber":65,"author":{"gitId":"hafizuddin-a"},"content":" return new Deadline(description, by);","lastModifiedDate":"2024-02-07"},{"lineNumber":66,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":67,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":68,"author":{"gitId":"hafizuddin-a"},"content":" // Creates an Event task from the input.","lastModifiedDate":"2024-02-07"},{"lineNumber":69,"author":{"gitId":"hafizuddin-a"},"content":" private Event createEventTask(String input) {","lastModifiedDate":"2024-02-07"},{"lineNumber":70,"author":{"gitId":"hafizuddin-a"},"content":" String[] eventDetails \u003d input.split(\" /from | /to \");","lastModifiedDate":"2024-02-07"},{"lineNumber":71,"author":{"gitId":"hafizuddin-a"},"content":" String description \u003d eventDetails[0].substring(6).trim(); // Removing \u0027event \u0027 prefix.","lastModifiedDate":"2024-02-07"},{"lineNumber":72,"author":{"gitId":"hafizuddin-a"},"content":" String from \u003d (eventDetails.length \u003e 1) ? eventDetails[1] : \"No start time specified\";","lastModifiedDate":"2024-02-07"},{"lineNumber":73,"author":{"gitId":"hafizuddin-a"},"content":" String to \u003d (eventDetails.length \u003e 2) ? eventDetails[2] : \"No end time specified\";","lastModifiedDate":"2024-02-07"},{"lineNumber":74,"author":{"gitId":"hafizuddin-a"},"content":" return new Event(description, from, to);","lastModifiedDate":"2024-02-07"},{"lineNumber":75,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":76,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":77,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":78,"author":{"gitId":"hafizuddin-a"},"content":" private void printTask(Task task) {","lastModifiedDate":"2024-02-06"},{"lineNumber":79,"author":{"gitId":"hafizuddin-a"},"content":" System.out.println(BORDER + \" Got it. I\u0027ve added this task:\\n\"","lastModifiedDate":"2024-02-07"},{"lineNumber":80,"author":{"gitId":"hafizuddin-a"},"content":" + \" [\" + task.getTaskType() + \"] [\" + task.getStatusIcon() + \"] \" + task.getDescription() + \"\\n\"","lastModifiedDate":"2024-02-06"},{"lineNumber":81,"author":{"gitId":"hafizuddin-a"},"content":" + \" Now you have \" + taskCount + \" tasks in the list.\\n\"","lastModifiedDate":"2024-02-07"},{"lineNumber":82,"author":{"gitId":"hafizuddin-a"},"content":" + BORDER);","lastModifiedDate":"2024-02-07"},{"lineNumber":83,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":84,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":85,"author":{"gitId":"hafizuddin-a"},"content":" public TaskManager() {","lastModifiedDate":"2024-02-05"},{"lineNumber":86,"author":{"gitId":"hafizuddin-a"},"content":" tasks \u003d new Task[100];","lastModifiedDate":"2024-02-05"},{"lineNumber":87,"author":{"gitId":"hafizuddin-a"},"content":" taskCount \u003d 0;","lastModifiedDate":"2024-02-05"},{"lineNumber":88,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":89,"author":{"gitId":"hafizuddin-a"},"content":" while (true) {","lastModifiedDate":"2024-02-05"},{"lineNumber":90,"author":{"gitId":"hafizuddin-a"},"content":" Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-05"},{"lineNumber":91,"author":{"gitId":"hafizuddin-a"},"content":" String input \u003d in.nextLine();","lastModifiedDate":"2024-02-05"},{"lineNumber":92,"author":{"gitId":"hafizuddin-a"},"content":" if (input.equals(\"bye\")) {","lastModifiedDate":"2024-02-05"},{"lineNumber":93,"author":{"gitId":"hafizuddin-a"},"content":" break;","lastModifiedDate":"2024-02-05"},{"lineNumber":94,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":95,"author":{"gitId":"hafizuddin-a"},"content":" } else if (input.equals(\"list\")) {","lastModifiedDate":"2024-02-05"},{"lineNumber":96,"author":{"gitId":"hafizuddin-a"},"content":" printList();","lastModifiedDate":"2024-02-05"},{"lineNumber":97,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":98,"author":{"gitId":"hafizuddin-a"},"content":" } else if (input.startsWith(\"mark\") || input.startsWith(\"unmark\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":99,"author":{"gitId":"hafizuddin-a"},"content":" handleMarking(input);","lastModifiedDate":"2024-02-07"},{"lineNumber":100,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":101,"author":{"gitId":"hafizuddin-a"},"content":" } else {","lastModifiedDate":"2024-02-05"},{"lineNumber":102,"author":{"gitId":"hafizuddin-a"},"content":" Task task \u003d new Task(input);","lastModifiedDate":"2024-02-05"},{"lineNumber":103,"author":{"gitId":"hafizuddin-a"},"content":" addTask(input);","lastModifiedDate":"2024-02-07"},{"lineNumber":104,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":105,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":106,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":107,"author":{"gitId":"hafizuddin-a"},"content":"}","lastModifiedDate":"2024-02-05"}],"authorContributionMap":{"hafizuddin-a":107}},{"path":"src/main/java/Todo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"hafizuddin-a"},"content":"public class Todo extends Task {","lastModifiedDate":"2024-02-05"},{"lineNumber":2,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":3,"author":{"gitId":"hafizuddin-a"},"content":" public Todo (String description) {","lastModifiedDate":"2024-02-05"},{"lineNumber":4,"author":{"gitId":"hafizuddin-a"},"content":" super(description);","lastModifiedDate":"2024-02-05"},{"lineNumber":5,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":6,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":7,"author":{"gitId":"hafizuddin-a"},"content":" @Override","lastModifiedDate":"2024-02-05"},{"lineNumber":8,"author":{"gitId":"hafizuddin-a"},"content":" public String getTaskType() {","lastModifiedDate":"2024-02-06"},{"lineNumber":9,"author":{"gitId":"hafizuddin-a"},"content":" return \"T\";","lastModifiedDate":"2024-02-06"},{"lineNumber":10,"author":{"gitId":"hafizuddin-a"},"content":" }","lastModifiedDate":"2024-02-05"},{"lineNumber":11,"author":{"gitId":"hafizuddin-a"},"content":"","lastModifiedDate":"2024-02-05"},{"lineNumber":12,"author":{"gitId":"hafizuddin-a"},"content":"}","lastModifiedDate":"2024-02-05"}],"authorContributionMap":{"hafizuddin-a":12}}] diff --git a/hafizuddin-a_ip_master/commits.json b/hafizuddin-a_ip_master/commits.json index 2bb39e8e..413d0dc8 100644 --- a/hafizuddin-a_ip_master/commits.json +++ b/hafizuddin-a_ip_master/commits.json @@ -1 +1 @@ -{"authorDailyContributionsMap":{"hafizuddin-a":[{"date":"2024-01-23","commitResults":[{"hash":"eb70cbbb80d17835dafabfa7577aef4900f89fd4","isMergeCommit":false,"messageTitle":"Add Increment: Level-0","messageBody":"","tags":["Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":10,"deletions":6}}},{"hash":"aeb7d0cf632b953aefb64597214742a1842bab12","isMergeCommit":false,"messageTitle":"Rename class to Cody","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1}}}]},{"date":"2024-01-29","commitResults":[{"hash":"99b06ab74cbe45b4b468e26bf5c09c29806e752a","isMergeCommit":false,"messageTitle":"Implement greet and exit","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":10,"deletions":6}}},{"hash":"feb80f8897669efadf41fd61f787ce28b68686fd","isMergeCommit":false,"messageTitle":"Rename chatbot to Cody","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1}}},{"hash":"b9b591797c40a0cd7ab2f26739b0066dcf202692","isMergeCommit":false,"messageTitle":"Implement echo","messageBody":"Implemented echo method that echos commands entered by the user, and exits when the user types the command \u0027bye\u0027.\n","tags":["Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":29,"deletions":5}}},{"hash":"1099ffe892e10b1b7539c54ab1f1184ffa81b37b","isMergeCommit":false,"messageTitle":"Implement add to task list","messageBody":"* Implement createList method that adds tasks given by the user into a list. Method prints the list when user gives the command \u0027list\u0027 and exits when the user gives the command \u0027bye\u0027.\n* Edit greet message to prompt user to give Cody tasks to add to the list\n","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":26,"deletions":4}}}]},{"date":"2024-01-30","commitResults":[{"hash":"f4173027d33fa554431c70a08199ffc2ff8a128d","isMergeCommit":false,"messageTitle":"Implement mark as done","messageBody":"* Implemented Task class in Task.java. isDone attribute in Task class tracks the done status of the task.\n* markDone and markUndone methods in Cody class prints to the user the task that they want to mark and unmark.\n","tags":["Level-3"],"fileTypesAndContributionMap":{"java":{"insertions":84,"deletions":23}}}]}]},"authorFileTypeContributionMap":{"hafizuddin-a":{"java":119,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"hafizuddin-a":1243.8541},"authorDisplayNameMap":{"hafizuddin-a":"CS2113-T15-3 HAFI..DDIN"}} +{"authorDailyContributionsMap":{"hafizuddin-a":[{"date":"2024-01-23","commitResults":[{"hash":"eb70cbbb80d17835dafabfa7577aef4900f89fd4","isMergeCommit":false,"messageTitle":"Add Increment: Level-0","messageBody":"","tags":["Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":10,"deletions":6}}},{"hash":"aeb7d0cf632b953aefb64597214742a1842bab12","isMergeCommit":false,"messageTitle":"Rename class to Cody","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1}}}]},{"date":"2024-01-29","commitResults":[{"hash":"99b06ab74cbe45b4b468e26bf5c09c29806e752a","isMergeCommit":false,"messageTitle":"Implement greet and exit","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":10,"deletions":6}}},{"hash":"feb80f8897669efadf41fd61f787ce28b68686fd","isMergeCommit":false,"messageTitle":"Rename chatbot to Cody","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1}}},{"hash":"b9b591797c40a0cd7ab2f26739b0066dcf202692","isMergeCommit":false,"messageTitle":"Implement echo","messageBody":"Implemented echo method that echos commands entered by the user, and exits when the user types the command \u0027bye\u0027.\n","tags":["Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":29,"deletions":5}}},{"hash":"1099ffe892e10b1b7539c54ab1f1184ffa81b37b","isMergeCommit":false,"messageTitle":"Implement add to task list","messageBody":"* Implement createList method that adds tasks given by the user into a list. Method prints the list when user gives the command \u0027list\u0027 and exits when the user gives the command \u0027bye\u0027.\n* Edit greet message to prompt user to give Cody tasks to add to the list\n","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":26,"deletions":4}}}]},{"date":"2024-01-30","commitResults":[{"hash":"f4173027d33fa554431c70a08199ffc2ff8a128d","isMergeCommit":false,"messageTitle":"Implement mark as done","messageBody":"* Implemented Task class in Task.java. isDone attribute in Task class tracks the done status of the task.\n* markDone and markUndone methods in Cody class prints to the user the task that they want to mark and unmark.\n","tags":["Level-3","A-CodingStandard"],"fileTypesAndContributionMap":{"java":{"insertions":84,"deletions":23}}}]},{"date":"2024-02-05","commitResults":[{"hash":"2e3efbbf6a3f44cb522f261363ca39ac8aa56e3b","isMergeCommit":false,"messageTitle":"Implement TaskManager class","messageBody":"* removed echo\n* refactored markDone and markUndone method to markTask\n* Implemented TaskManager class\n","fileTypesAndContributionMap":{"java":{"insertions":45,"deletions":20}}},{"hash":"e28f9b7a80a00309e4c295bd4b68975a16a16899","isMergeCommit":false,"messageTitle":"Implement Todo class","messageBody":"* Todo class inherits from class and overrides toString method to print [T]\n","fileTypesAndContributionMap":{"java":{"insertions":49,"deletions":64}}},{"hash":"b83979d01902069f3b926d6b814b32b03e5e30ec","isMergeCommit":false,"messageTitle":"Implement Deadline and Event class","messageBody":"* both Deadline and Event inherits Task class\n","fileTypesAndContributionMap":{"java":{"insertions":41,"deletions":2}}}]},{"date":"2024-02-06","commitResults":[{"hash":"fe20d65ee75c4268662188e1641474290d8a533f","isMergeCommit":false,"messageTitle":"Implement taskType attribute and process event","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":37,"deletions":17}}},{"hash":"299beed03a84d0221943153a1b2faa6776f50884","isMergeCommit":false,"messageTitle":"Implement check for deadline and event","messageBody":"* by, from, to shows null when user does not input the details\n","tags":["level-4"],"fileTypesAndContributionMap":{"java":{"insertions":8,"deletions":5}}}]},{"date":"2024-02-07","commitResults":[{"hash":"2cf59a4e45f6c0179b11148377945e302201f424","isMergeCommit":false,"messageTitle":"Implement printMessage method","messageBody":"* parameterised message printing using constants for greet and exit\n","fileTypesAndContributionMap":{"java":{"insertions":26,"deletions":11}}},{"hash":"15b059dece65eb9f1dcfe62de1ba9eb4f0d2550f","isMergeCommit":false,"messageTitle":"Implement handleMarking method","messageBody":"* refactor markTask method to not need boolean input\n* refactor marking task feature with handleMarking method\n* added border as a constant\n","tags":["A-CodeQuality"],"fileTypesAndContributionMap":{"java":{"insertions":20,"deletions":30}}},{"hash":"20d80f44fd7a7e477124a273f96f30e0899406d0","isMergeCommit":false,"messageTitle":"Refactor addTask method","messageBody":"* implemented createTaskFromInput to shorten the addTask method. Used createDeadlineTask, createTodoTask, createEventTask to create each task type\n","fileTypesAndContributionMap":{"java":{"insertions":41,"deletions":23}}}]}]},"authorFileTypeContributionMap":{"hafizuddin-a":{"java":214,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"hafizuddin-a":3688.1099},"authorDisplayNameMap":{"hafizuddin-a":"CS2113-T15-3 HAFI..DDIN"}} diff --git a/hongyijie06_ip_master/authorship.json b/hongyijie06_ip_master/authorship.json index 010bb3ec..f704c613 100644 --- a/hongyijie06_ip_master/authorship.json +++ b/hongyijie06_ip_master/authorship.json @@ -1 +1 @@ -[{"path":"src/main/java/Duke.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"hongyijie06"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"-"},"content":"public class Duke {","lastModifiedDate":"2019-07-29"},{"lineNumber":4,"author":{"gitId":"-"},"content":" public static void main(String[] args) {","lastModifiedDate":"2019-07-29"},{"lineNumber":5,"author":{"gitId":"hongyijie06"},"content":" String list[] \u003d new String[100];","lastModifiedDate":"2024-02-07"},{"lineNumber":6,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-01-26"},{"lineNumber":7,"author":{"gitId":"hongyijie06"},"content":" System.out.println(\"Hello! I\u0027m apple\");","lastModifiedDate":"2024-01-26"},{"lineNumber":8,"author":{"gitId":"hongyijie06"},"content":" System.out.println(\"What can I do for you?\");","lastModifiedDate":"2024-01-26"},{"lineNumber":9,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"hongyijie06"},"content":" int index \u003d 0;","lastModifiedDate":"2024-02-07"},{"lineNumber":11,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":12,"author":{"gitId":"hongyijie06"},"content":" String line \u003d \"\";","lastModifiedDate":"2024-02-07"},{"lineNumber":13,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":14,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":15,"author":{"gitId":"hongyijie06"},"content":" ","lastModifiedDate":"2024-02-07"},{"lineNumber":16,"author":{"gitId":"hongyijie06"},"content":" while (!line.equals(\"bye\")){","lastModifiedDate":"2024-02-07"},{"lineNumber":17,"author":{"gitId":"hongyijie06"},"content":" Scanner input \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-07"},{"lineNumber":18,"author":{"gitId":"hongyijie06"},"content":" line \u003d input.nextLine();","lastModifiedDate":"2024-02-07"},{"lineNumber":19,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":20,"author":{"gitId":"hongyijie06"},"content":" if (line.equals(\"bye\")){","lastModifiedDate":"2024-02-07"},{"lineNumber":21,"author":{"gitId":"hongyijie06"},"content":" break;","lastModifiedDate":"2024-02-07"},{"lineNumber":22,"author":{"gitId":"hongyijie06"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":23,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":24,"author":{"gitId":"hongyijie06"},"content":" if (line.equals(\"list\")){","lastModifiedDate":"2024-02-07"},{"lineNumber":25,"author":{"gitId":"hongyijie06"},"content":" for (int i \u003d 0; i \u003c index; i ++) {","lastModifiedDate":"2024-02-07"},{"lineNumber":26,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":27,"author":{"gitId":"hongyijie06"},"content":" System.out.println((i + 1) + \". \" + list[i]);","lastModifiedDate":"2024-02-07"},{"lineNumber":28,"author":{"gitId":"hongyijie06"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":29,"author":{"gitId":"hongyijie06"},"content":" }else {","lastModifiedDate":"2024-02-07"},{"lineNumber":30,"author":{"gitId":"hongyijie06"},"content":" list[index] \u003d line;","lastModifiedDate":"2024-02-07"},{"lineNumber":31,"author":{"gitId":"hongyijie06"},"content":" System.out.println(\"added: \" + line);","lastModifiedDate":"2024-02-07"},{"lineNumber":32,"author":{"gitId":"hongyijie06"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":33,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":34,"author":{"gitId":"hongyijie06"},"content":" index ++;","lastModifiedDate":"2024-02-07"},{"lineNumber":35,"author":{"gitId":"hongyijie06"},"content":" ","lastModifiedDate":"2024-02-07"},{"lineNumber":36,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":37,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":38,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":39,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":40,"author":{"gitId":"hongyijie06"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":41,"author":{"gitId":"hongyijie06"},"content":" System.out.println(\"Bye. Hope to see you again soon!\");","lastModifiedDate":"2024-01-26"},{"lineNumber":42,"author":{"gitId":"hongyijie06"},"content":" ","lastModifiedDate":"2024-02-07"},{"lineNumber":43,"author":{"gitId":"hongyijie06"},"content":" ","lastModifiedDate":"2024-02-07"},{"lineNumber":44,"author":{"gitId":"-"},"content":" }","lastModifiedDate":"2019-07-29"},{"lineNumber":45,"author":{"gitId":"-"},"content":"}","lastModifiedDate":"2019-07-29"}],"authorContributionMap":{"hongyijie06":41,"-":4}}] +[{"path":"src/main/java/Duke.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"hongyijie06"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"-"},"content":"public class Duke {","lastModifiedDate":"2019-07-29"},{"lineNumber":4,"author":{"gitId":"-"},"content":" public static void main(String[] args) {","lastModifiedDate":"2019-07-29"},{"lineNumber":5,"author":{"gitId":"hongyijie06"},"content":" Task[] list \u003d new Task[100];","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-01-26"},{"lineNumber":7,"author":{"gitId":"hongyijie06"},"content":" //greeting","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"hongyijie06"},"content":" System.out.println(\"Hello! I\u0027m Apple\");","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"hongyijie06"},"content":" System.out.println(\"What can I do for you?\");","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":11,"author":{"gitId":"hongyijie06"},"content":" int index \u003d 0;//number of items in the list","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"hongyijie06"},"content":" String line \u003d \" \";","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":14,"author":{"gitId":"hongyijie06"},"content":" while (!line.equals(\"bye\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":15,"author":{"gitId":"hongyijie06"},"content":" Scanner input \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-07"},{"lineNumber":16,"author":{"gitId":"hongyijie06"},"content":" line \u003d input.nextLine();","lastModifiedDate":"2024-02-07"},{"lineNumber":17,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":18,"author":{"gitId":"hongyijie06"},"content":" Task t \u003d new Task(line);","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"hongyijie06"},"content":" String[] inputs \u003d line.split(\" \");","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"hongyijie06"},"content":" if (inputs[0].equals(\"mark\")) {//mark as done","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"hongyijie06"},"content":" int idx \u003d Integer.parseInt(inputs[1]);","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"hongyijie06"},"content":" list[idx - 1].markAsDone();","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"hongyijie06"},"content":" System.out.println(\"Nice! I\u0027ve marked this task as done: \");","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"hongyijie06"},"content":" System.out.println(\"[\" + list[idx - 1].getStatusIcon() + \"]\" + list[idx - 1].description);","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"hongyijie06"},"content":" } else if (inputs[0].equals(\"unmark\")) {//unmark done","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"hongyijie06"},"content":" int idx \u003d Integer.parseInt(inputs[1]);","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"hongyijie06"},"content":" list[idx - 1].unmarkDone();","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"hongyijie06"},"content":" System.out.println(\"OK, I\u0027ve marked this task as not done yet: \");","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"hongyijie06"},"content":" System.out.println(\"[\" + list[idx - 1].getStatusIcon() + \"]\" + list[idx - 1].description);","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"hongyijie06"},"content":" } else if (line.equals(\"list\")) {//lists items","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"hongyijie06"},"content":" System.out.println(\"Here are the tasks in your list: \");","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"hongyijie06"},"content":" for (int i \u003d 0; i \u003c index; i++) {","lastModifiedDate":"2024-02-07"},{"lineNumber":34,"author":{"gitId":"hongyijie06"},"content":" System.out.println((i + 1) + \". [\" + list[i].getStatusIcon() + \"]\" + list[i].description);","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"hongyijie06"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":36,"author":{"gitId":"hongyijie06"},"content":" } else if (line.equals(\"bye\")) {//exit chat","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"hongyijie06"},"content":" break;","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"hongyijie06"},"content":" } else {//add items","lastModifiedDate":"2024-02-09"},{"lineNumber":39,"author":{"gitId":"hongyijie06"},"content":" list[index] \u003d t;","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"hongyijie06"},"content":" System.out.println(\"added: \" + t.description);","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"hongyijie06"},"content":" index++;","lastModifiedDate":"2024-02-07"},{"lineNumber":42,"author":{"gitId":"hongyijie06"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":43,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":44,"author":{"gitId":"hongyijie06"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":45,"author":{"gitId":"hongyijie06"},"content":" System.out.println(\"Bye. Hope to see you again soon!\");","lastModifiedDate":"2024-01-26"},{"lineNumber":46,"author":{"gitId":"-"},"content":" }","lastModifiedDate":"2019-07-29"},{"lineNumber":47,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":48,"author":{"gitId":"-"},"content":"}","lastModifiedDate":"2019-07-29"}],"authorContributionMap":{"hongyijie06":44,"-":4}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"hongyijie06"},"content":"public class Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"hongyijie06"},"content":" protected String description;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"hongyijie06"},"content":" protected boolean isDone;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"hongyijie06"},"content":" public Task(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"hongyijie06"},"content":" this.description \u003d description;","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"hongyijie06"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"hongyijie06"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"hongyijie06"},"content":" public String getStatusIcon() {","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"hongyijie06"},"content":" return (isDone ? \"X\" : \" \"); // mark done task with X","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"hongyijie06"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"hongyijie06"},"content":" public void markAsDone() {","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"hongyijie06"},"content":" this.isDone \u003d true;","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"hongyijie06"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"hongyijie06"},"content":" public void unmarkDone() {","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"hongyijie06"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"hongyijie06"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"hongyijie06"},"content":"}","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"hongyijie06"},"content":"","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"hongyijie06":21}}] diff --git a/hongyijie06_ip_master/commits.json b/hongyijie06_ip_master/commits.json index 068e63d2..b28623f3 100644 --- a/hongyijie06_ip_master/commits.json +++ b/hongyijie06_ip_master/commits.json @@ -1 +1 @@ -{"authorDailyContributionsMap":{"hongyijie06":[{"date":"2024-01-26","commitResults":[{"hash":"f0ecd9cdbc3d816a0ef0efe2f512008fc0db423b","isMergeCommit":false,"messageTitle":"add chatbot name","messageBody":"","tags":["Level-1","Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":4,"deletions":6}}}]},{"date":"2024-02-07","commitResults":[{"hash":"e0b6eeda26c7b64e6df39652a16d12b867e9bcf4","isMergeCommit":false,"messageTitle":"Add echo","messageBody":"","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":22,"deletions":0}}},{"hash":"35ec609da73aa0b0b920aba737871704d1ace3f1","isMergeCommit":false,"messageTitle":"add Add,list","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":18,"deletions":3}}}]}]},"authorFileTypeContributionMap":{"hongyijie06":{"java":41,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"hongyijie06":90.4275},"authorDisplayNameMap":{"hongyijie06":"CS2113-F15-1 HONG.. JIE"}} +{"authorDailyContributionsMap":{"hongyijie06":[{"date":"2024-01-26","commitResults":[{"hash":"f0ecd9cdbc3d816a0ef0efe2f512008fc0db423b","isMergeCommit":false,"messageTitle":"add chatbot name","messageBody":"","tags":["Level-1","Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":4,"deletions":6}}}]},{"date":"2024-02-07","commitResults":[{"hash":"e0b6eeda26c7b64e6df39652a16d12b867e9bcf4","isMergeCommit":false,"messageTitle":"Add echo","messageBody":"","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":22,"deletions":0}}},{"hash":"35ec609da73aa0b0b920aba737871704d1ace3f1","isMergeCommit":false,"messageTitle":"add Add,list","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":18,"deletions":3}}}]},{"date":"2024-02-09","commitResults":[{"hash":"0c167248e0c87e57066436708fbf29340460d22f","isMergeCommit":false,"messageTitle":"add mark as done","messageBody":"","tags":["Level-3"],"fileTypesAndContributionMap":{"java":{"insertions":68,"deletions":39}}},{"hash":"1b6ca15d9aaa88aa5a7a834645c3e6f233cda887","isMergeCommit":false,"messageTitle":"add A-CodingStandard","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":56,"deletions":61}}}]}]},"authorFileTypeContributionMap":{"hongyijie06":{"java":65,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"hongyijie06":2210.787},"authorDisplayNameMap":{"hongyijie06":"CS2113-F15-1 HONG.. JIE"}} diff --git a/lordgareth10_ip_master/authorship.json b/lordgareth10_ip_master/authorship.json index e28d22ef..ceed47fa 100644 --- a/lordgareth10_ip_master/authorship.json +++ b/lordgareth10_ip_master/authorship.json @@ -1 +1 @@ -[{"path":"src/main/java/Dross.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"lordgareth10"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-06"},{"lineNumber":2,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":3,"author":{"gitId":"lordgareth10"},"content":"public class Dross {","lastModifiedDate":"2024-01-27"},{"lineNumber":4,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":5,"author":{"gitId":"lordgareth10"},"content":" //Size 100 array tasklist for Dross","lastModifiedDate":"2024-02-06"},{"lineNumber":6,"author":{"gitId":"lordgareth10"},"content":" private static List drossTaskList \u003d new List();","lastModifiedDate":"2024-02-06"},{"lineNumber":7,"author":{"gitId":"lordgareth10"},"content":" //Method that prints line using \"_\" char","lastModifiedDate":"2024-02-06"},{"lineNumber":8,"author":{"gitId":"lordgareth10"},"content":" public static void printLine() {","lastModifiedDate":"2024-02-06"},{"lineNumber":9,"author":{"gitId":"lordgareth10"},"content":" for (int i \u003d 0; i \u003c 55; i++) {","lastModifiedDate":"2024-02-06"},{"lineNumber":10,"author":{"gitId":"lordgareth10"},"content":" System.out.print(\"_\");","lastModifiedDate":"2024-02-06"},{"lineNumber":11,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":12,"author":{"gitId":"lordgareth10"},"content":" System.out.println();","lastModifiedDate":"2024-02-06"},{"lineNumber":13,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":14,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":15,"author":{"gitId":"lordgareth10"},"content":" //Method that echoes back whatever user typed in provide that it is not \"bye\"","lastModifiedDate":"2024-02-06"},{"lineNumber":16,"author":{"gitId":"lordgareth10"},"content":" public static void echo(){","lastModifiedDate":"2024-02-06"},{"lineNumber":17,"author":{"gitId":"lordgareth10"},"content":" Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-06"},{"lineNumber":18,"author":{"gitId":"lordgareth10"},"content":" String line \u003d in.nextLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":19,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":20,"author":{"gitId":"lordgareth10"},"content":" while (!line.equals(\"bye\")) {","lastModifiedDate":"2024-02-06"},{"lineNumber":21,"author":{"gitId":"lordgareth10"},"content":" printLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":22,"author":{"gitId":"lordgareth10"},"content":" System.out.println(line);","lastModifiedDate":"2024-02-06"},{"lineNumber":23,"author":{"gitId":"lordgareth10"},"content":" printLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":24,"author":{"gitId":"lordgareth10"},"content":" line \u003d in.nextLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":25,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":26,"author":{"gitId":"lordgareth10"},"content":" goodbye();","lastModifiedDate":"2024-02-06"},{"lineNumber":27,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":28,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":29,"author":{"gitId":"lordgareth10"},"content":" //Method that prints bye message","lastModifiedDate":"2024-02-06"},{"lineNumber":30,"author":{"gitId":"lordgareth10"},"content":" public static void goodbye(){","lastModifiedDate":"2024-02-06"},{"lineNumber":31,"author":{"gitId":"lordgareth10"},"content":" printLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":32,"author":{"gitId":"lordgareth10"},"content":" System.out.println(\"Bye. Hope to see you again soon!\");","lastModifiedDate":"2024-01-27"},{"lineNumber":33,"author":{"gitId":"lordgareth10"},"content":" printLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":34,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":35,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":36,"author":{"gitId":"lordgareth10"},"content":" //Method that lists out all the tasks","lastModifiedDate":"2024-02-06"},{"lineNumber":37,"author":{"gitId":"lordgareth10"},"content":" public static void listAllTasks() {","lastModifiedDate":"2024-02-06"},{"lineNumber":38,"author":{"gitId":"lordgareth10"},"content":" printLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":39,"author":{"gitId":"lordgareth10"},"content":" drossTaskList.printAllTasks();","lastModifiedDate":"2024-02-06"},{"lineNumber":40,"author":{"gitId":"lordgareth10"},"content":" printLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":41,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":42,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":43,"author":{"gitId":"lordgareth10"},"content":" //Method that receives the user input and toggles the check on the task based on index","lastModifiedDate":"2024-02-06"},{"lineNumber":44,"author":{"gitId":"lordgareth10"},"content":" public static void toggleMark(String instruction) {","lastModifiedDate":"2024-02-06"},{"lineNumber":45,"author":{"gitId":"lordgareth10"},"content":" String command \u003d instruction.split(\" \")[0];","lastModifiedDate":"2024-02-06"},{"lineNumber":46,"author":{"gitId":"lordgareth10"},"content":" int index \u003d Integer.parseInt(instruction.split(\" \")[1]);","lastModifiedDate":"2024-02-06"},{"lineNumber":47,"author":{"gitId":"lordgareth10"},"content":" if (command.equals(\"mark\")){","lastModifiedDate":"2024-02-06"},{"lineNumber":48,"author":{"gitId":"lordgareth10"},"content":" drossTaskList.markDoneByIndex(index);","lastModifiedDate":"2024-02-06"},{"lineNumber":49,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":50,"author":{"gitId":"lordgareth10"},"content":" else{","lastModifiedDate":"2024-02-06"},{"lineNumber":51,"author":{"gitId":"lordgareth10"},"content":" drossTaskList.markUndoneByIndex(index);","lastModifiedDate":"2024-02-06"},{"lineNumber":52,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":53,"author":{"gitId":"lordgareth10"},"content":" listAllTasks();","lastModifiedDate":"2024-02-06"},{"lineNumber":54,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":55,"author":{"gitId":"lordgareth10"},"content":" public static void receiveUserInput() {","lastModifiedDate":"2024-02-06"},{"lineNumber":56,"author":{"gitId":"lordgareth10"},"content":" String line;","lastModifiedDate":"2024-02-06"},{"lineNumber":57,"author":{"gitId":"lordgareth10"},"content":" Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-06"},{"lineNumber":58,"author":{"gitId":"lordgareth10"},"content":" line \u003d in.nextLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":59,"author":{"gitId":"lordgareth10"},"content":" while (!line.equals(\"bye\")) {","lastModifiedDate":"2024-02-06"},{"lineNumber":60,"author":{"gitId":"lordgareth10"},"content":" if (line.equals(\"list\")) {","lastModifiedDate":"2024-02-06"},{"lineNumber":61,"author":{"gitId":"lordgareth10"},"content":" listAllTasks();","lastModifiedDate":"2024-02-06"},{"lineNumber":62,"author":{"gitId":"lordgareth10"},"content":" line \u003d in.nextLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":63,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":64,"author":{"gitId":"lordgareth10"},"content":" else if (line.startsWith(\"mark\") || line.startsWith(\"unmark\")) {","lastModifiedDate":"2024-02-06"},{"lineNumber":65,"author":{"gitId":"lordgareth10"},"content":" toggleMark(line);","lastModifiedDate":"2024-02-06"},{"lineNumber":66,"author":{"gitId":"lordgareth10"},"content":" line \u003d in.nextLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":67,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":68,"author":{"gitId":"lordgareth10"},"content":" else{","lastModifiedDate":"2024-02-06"},{"lineNumber":69,"author":{"gitId":"lordgareth10"},"content":" printLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":70,"author":{"gitId":"lordgareth10"},"content":" drossTaskList.addTask(line);","lastModifiedDate":"2024-02-06"},{"lineNumber":71,"author":{"gitId":"lordgareth10"},"content":" drossTaskList.printLastTask();","lastModifiedDate":"2024-02-06"},{"lineNumber":72,"author":{"gitId":"lordgareth10"},"content":" printLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":73,"author":{"gitId":"lordgareth10"},"content":" line \u003d in.nextLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":74,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":75,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":76,"author":{"gitId":"lordgareth10"},"content":" goodbye();","lastModifiedDate":"2024-02-06"},{"lineNumber":77,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":78,"author":{"gitId":"lordgareth10"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-02-06"},{"lineNumber":79,"author":{"gitId":"lordgareth10"},"content":" printLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":80,"author":{"gitId":"lordgareth10"},"content":" System.out.println(\"Hello! I\u0027m Dross\");","lastModifiedDate":"2024-02-06"},{"lineNumber":81,"author":{"gitId":"lordgareth10"},"content":" System.out.println(\"What can I do for you?\");","lastModifiedDate":"2024-02-06"},{"lineNumber":82,"author":{"gitId":"lordgareth10"},"content":" printLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":83,"author":{"gitId":"lordgareth10"},"content":" receiveUserInput();","lastModifiedDate":"2024-02-06"},{"lineNumber":84,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-01-27"},{"lineNumber":85,"author":{"gitId":"lordgareth10"},"content":"}","lastModifiedDate":"2024-01-27"}],"authorContributionMap":{"lordgareth10":85}},{"path":"src/main/java/List.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"lordgareth10"},"content":"public class List {","lastModifiedDate":"2024-02-06"},{"lineNumber":2,"author":{"gitId":"lordgareth10"},"content":" private Task[] tasks;","lastModifiedDate":"2024-02-06"},{"lineNumber":3,"author":{"gitId":"lordgareth10"},"content":" private int size;","lastModifiedDate":"2024-02-06"},{"lineNumber":4,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":5,"author":{"gitId":"lordgareth10"},"content":" public List() {","lastModifiedDate":"2024-02-06"},{"lineNumber":6,"author":{"gitId":"lordgareth10"},"content":" this.tasks \u003d new Task[100]; // initial capacity","lastModifiedDate":"2024-02-06"},{"lineNumber":7,"author":{"gitId":"lordgareth10"},"content":" this.size \u003d 0;","lastModifiedDate":"2024-02-06"},{"lineNumber":8,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":9,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":10,"author":{"gitId":"lordgareth10"},"content":" // Method to add a task to the list","lastModifiedDate":"2024-02-06"},{"lineNumber":11,"author":{"gitId":"lordgareth10"},"content":" public void addTask(String taskDescription) {","lastModifiedDate":"2024-02-06"},{"lineNumber":12,"author":{"gitId":"lordgareth10"},"content":" tasks[size] \u003d new Task(taskDescription);","lastModifiedDate":"2024-02-06"},{"lineNumber":13,"author":{"gitId":"lordgareth10"},"content":" size++;","lastModifiedDate":"2024-02-06"},{"lineNumber":14,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":15,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":16,"author":{"gitId":"lordgareth10"},"content":" // Method to print the last added task","lastModifiedDate":"2024-02-06"},{"lineNumber":17,"author":{"gitId":"lordgareth10"},"content":" public void printLastTask() {","lastModifiedDate":"2024-02-06"},{"lineNumber":18,"author":{"gitId":"lordgareth10"},"content":" if (size \u003e 0) {","lastModifiedDate":"2024-02-06"},{"lineNumber":19,"author":{"gitId":"lordgareth10"},"content":" System.out.println(\"Last added task: \" + tasks[size - 1]);","lastModifiedDate":"2024-02-06"},{"lineNumber":20,"author":{"gitId":"lordgareth10"},"content":" } else {","lastModifiedDate":"2024-02-06"},{"lineNumber":21,"author":{"gitId":"lordgareth10"},"content":" System.out.println(\"The list is empty.\");","lastModifiedDate":"2024-02-06"},{"lineNumber":22,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":23,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":24,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":25,"author":{"gitId":"lordgareth10"},"content":" //Method to toggle check task as done by index","lastModifiedDate":"2024-02-06"},{"lineNumber":26,"author":{"gitId":"lordgareth10"},"content":" public void markDoneByIndex(int index){","lastModifiedDate":"2024-02-06"},{"lineNumber":27,"author":{"gitId":"lordgareth10"},"content":" tasks[index].completeTask();","lastModifiedDate":"2024-02-06"},{"lineNumber":28,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":29,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":30,"author":{"gitId":"lordgareth10"},"content":" //Method to toggle check task as undone by index","lastModifiedDate":"2024-02-06"},{"lineNumber":31,"author":{"gitId":"lordgareth10"},"content":" public void markUndoneByIndex(int index){","lastModifiedDate":"2024-02-06"},{"lineNumber":32,"author":{"gitId":"lordgareth10"},"content":" tasks[index].uncheckTask();","lastModifiedDate":"2024-02-06"},{"lineNumber":33,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":34,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":35,"author":{"gitId":"lordgareth10"},"content":" // Method to print all tasks","lastModifiedDate":"2024-02-06"},{"lineNumber":36,"author":{"gitId":"lordgareth10"},"content":" public void printAllTasks() {","lastModifiedDate":"2024-02-06"},{"lineNumber":37,"author":{"gitId":"lordgareth10"},"content":" if (size \u003e 0) {","lastModifiedDate":"2024-02-06"},{"lineNumber":38,"author":{"gitId":"lordgareth10"},"content":" System.out.println(\"All tasks:\");","lastModifiedDate":"2024-02-06"},{"lineNumber":39,"author":{"gitId":"lordgareth10"},"content":" for (int i \u003d 0; i \u003c size; i++) {","lastModifiedDate":"2024-02-06"},{"lineNumber":40,"author":{"gitId":"lordgareth10"},"content":" Task currentTask \u003d tasks[i]; // Assuming tasks[i] is a Task object","lastModifiedDate":"2024-02-06"},{"lineNumber":41,"author":{"gitId":"lordgareth10"},"content":" String statusMark \u003d currentTask.isCompleted() ? \"x\" : \" \"; // Mark with \u0027x\u0027 if completed","lastModifiedDate":"2024-02-06"},{"lineNumber":42,"author":{"gitId":"lordgareth10"},"content":" System.out.println((i+1) + \". \" + \"[\" + statusMark + \"] \" + currentTask.getDescription());","lastModifiedDate":"2024-02-06"},{"lineNumber":43,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":44,"author":{"gitId":"lordgareth10"},"content":" } else {","lastModifiedDate":"2024-02-06"},{"lineNumber":45,"author":{"gitId":"lordgareth10"},"content":" System.out.println(\"The list is empty.\");","lastModifiedDate":"2024-02-06"},{"lineNumber":46,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":47,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":48,"author":{"gitId":"lordgareth10"},"content":"}","lastModifiedDate":"2024-02-06"}],"authorContributionMap":{"lordgareth10":48}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"lordgareth10"},"content":"public class Task {","lastModifiedDate":"2024-02-06"},{"lineNumber":2,"author":{"gitId":"lordgareth10"},"content":" private String description;","lastModifiedDate":"2024-02-06"},{"lineNumber":3,"author":{"gitId":"lordgareth10"},"content":" private boolean isCompleted;","lastModifiedDate":"2024-02-06"},{"lineNumber":4,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":5,"author":{"gitId":"lordgareth10"},"content":" // Constructor","lastModifiedDate":"2024-02-06"},{"lineNumber":6,"author":{"gitId":"lordgareth10"},"content":" public Task(String description) {","lastModifiedDate":"2024-02-06"},{"lineNumber":7,"author":{"gitId":"lordgareth10"},"content":" this.description \u003d description;","lastModifiedDate":"2024-02-06"},{"lineNumber":8,"author":{"gitId":"lordgareth10"},"content":" this.isCompleted \u003d false; // Tasks start as not completed by default","lastModifiedDate":"2024-02-06"},{"lineNumber":9,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":10,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":11,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":12,"author":{"gitId":"lordgareth10"},"content":" // Mark the task as completed","lastModifiedDate":"2024-02-06"},{"lineNumber":13,"author":{"gitId":"lordgareth10"},"content":" public void completeTask() {","lastModifiedDate":"2024-02-06"},{"lineNumber":14,"author":{"gitId":"lordgareth10"},"content":" this.isCompleted \u003d true;","lastModifiedDate":"2024-02-06"},{"lineNumber":15,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":16,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":17,"author":{"gitId":"lordgareth10"},"content":" // Mark the task as not completed (or \"uncheck\" the task)","lastModifiedDate":"2024-02-06"},{"lineNumber":18,"author":{"gitId":"lordgareth10"},"content":" public void uncheckTask() {","lastModifiedDate":"2024-02-06"},{"lineNumber":19,"author":{"gitId":"lordgareth10"},"content":" this.isCompleted \u003d false;","lastModifiedDate":"2024-02-06"},{"lineNumber":20,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":21,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":22,"author":{"gitId":"lordgareth10"},"content":" // Get the task description","lastModifiedDate":"2024-02-06"},{"lineNumber":23,"author":{"gitId":"lordgareth10"},"content":" public String getDescription() {","lastModifiedDate":"2024-02-06"},{"lineNumber":24,"author":{"gitId":"lordgareth10"},"content":" return this.description;","lastModifiedDate":"2024-02-06"},{"lineNumber":25,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":26,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":27,"author":{"gitId":"lordgareth10"},"content":" // Check if the task is completed","lastModifiedDate":"2024-02-06"},{"lineNumber":28,"author":{"gitId":"lordgareth10"},"content":" public boolean isCompleted() {","lastModifiedDate":"2024-02-06"},{"lineNumber":29,"author":{"gitId":"lordgareth10"},"content":" return this.isCompleted;","lastModifiedDate":"2024-02-06"},{"lineNumber":30,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":31,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":32,"author":{"gitId":"lordgareth10"},"content":" @Override","lastModifiedDate":"2024-02-06"},{"lineNumber":33,"author":{"gitId":"lordgareth10"},"content":" public String toString() {","lastModifiedDate":"2024-02-06"},{"lineNumber":34,"author":{"gitId":"lordgareth10"},"content":" return \"Task: \" + this.description + \" - Completed: \" + this.isCompleted;","lastModifiedDate":"2024-02-06"},{"lineNumber":35,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":36,"author":{"gitId":"lordgareth10"},"content":"}","lastModifiedDate":"2024-02-06"}],"authorContributionMap":{"lordgareth10":36}}] +[{"path":"src/main/java/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"lordgareth10"},"content":"public class Deadline extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"lordgareth10"},"content":" protected String by;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"lordgareth10"},"content":" //Deadline subclass of Task superclass","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"lordgareth10"},"content":" public Deadline(String description, String by) {","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"lordgareth10"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"lordgareth10"},"content":" this.by \u003d by;","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"lordgareth10"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"lordgareth10"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"lordgareth10"},"content":" String statusMark \u003d this.isCompleted() ? \"x\" : \" \"; // Mark with \u0027x\u0027 if completed","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"lordgareth10"},"content":" return \"[D]\" + \"[\" + statusMark + \"] \" + super.toString() + \" (by: \" + by + \")\";","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"lordgareth10"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"lordgareth10":16}},{"path":"src/main/java/Dross.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"lordgareth10"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-06"},{"lineNumber":2,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":3,"author":{"gitId":"lordgareth10"},"content":"public class Dross {","lastModifiedDate":"2024-01-27"},{"lineNumber":4,"author":{"gitId":"lordgareth10"},"content":" private static List drossTaskList \u003d new List();","lastModifiedDate":"2024-02-06"},{"lineNumber":5,"author":{"gitId":"lordgareth10"},"content":" private static Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"lordgareth10"},"content":" //Method to print a line of _ characters","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"lordgareth10"},"content":" public static void printLine() {","lastModifiedDate":"2024-02-06"},{"lineNumber":9,"author":{"gitId":"lordgareth10"},"content":" System.out.println(\"_\".repeat(55));","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":11,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":12,"author":{"gitId":"lordgareth10"},"content":" //Method to read in a line of text from standard input","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"lordgareth10"},"content":" public static String readLine() {","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"lordgareth10"},"content":" return in.nextLine().trim();","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":16,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":17,"author":{"gitId":"lordgareth10"},"content":" //Method to exit Dross bot","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"lordgareth10"},"content":" public static void goodbye() {","lastModifiedDate":"2024-02-06"},{"lineNumber":19,"author":{"gitId":"lordgareth10"},"content":" printLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":20,"author":{"gitId":"lordgareth10"},"content":" System.out.println(\"Bye. Hope to see you again soon!\");","lastModifiedDate":"2024-01-27"},{"lineNumber":21,"author":{"gitId":"lordgareth10"},"content":" printLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":22,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":23,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":24,"author":{"gitId":"lordgareth10"},"content":" //Method to list all tasks","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"lordgareth10"},"content":" public static void listAllTasks() {","lastModifiedDate":"2024-02-06"},{"lineNumber":26,"author":{"gitId":"lordgareth10"},"content":" printLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":27,"author":{"gitId":"lordgareth10"},"content":" drossTaskList.printAllTasks();","lastModifiedDate":"2024-02-06"},{"lineNumber":28,"author":{"gitId":"lordgareth10"},"content":" printLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":29,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":30,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":31,"author":{"gitId":"lordgareth10"},"content":" //Method to toggle tasks as marked or unmarked","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"lordgareth10"},"content":" public static void toggleMark(String instruction) {","lastModifiedDate":"2024-02-06"},{"lineNumber":33,"author":{"gitId":"lordgareth10"},"content":" String[] tokens \u003d instruction.split(\" \");","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"lordgareth10"},"content":" int index \u003d Integer.parseInt(tokens[1]);","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"lordgareth10"},"content":" if (tokens[0].equals(\"mark\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"lordgareth10"},"content":" drossTaskList.markDoneByIndex(index);","lastModifiedDate":"2024-02-06"},{"lineNumber":37,"author":{"gitId":"lordgareth10"},"content":" } else {","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"lordgareth10"},"content":" drossTaskList.markUndoneByIndex(index);","lastModifiedDate":"2024-02-06"},{"lineNumber":39,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":40,"author":{"gitId":"lordgareth10"},"content":" listAllTasks();","lastModifiedDate":"2024-02-06"},{"lineNumber":41,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":42,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":43,"author":{"gitId":"lordgareth10"},"content":" //Method to handle task creation and parse input to appropriately construct the correct object","lastModifiedDate":"2024-02-09"},{"lineNumber":44,"author":{"gitId":"lordgareth10"},"content":" public static void handleTaskCreation(String line) {","lastModifiedDate":"2024-02-09"},{"lineNumber":45,"author":{"gitId":"lordgareth10"},"content":" if (line.startsWith(\"todo\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":46,"author":{"gitId":"lordgareth10"},"content":" drossTaskList.addTask(line.substring(\"todo\".length()).trim());","lastModifiedDate":"2024-02-09"},{"lineNumber":47,"author":{"gitId":"lordgareth10"},"content":" } else if (line.startsWith(\"deadline\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":48,"author":{"gitId":"lordgareth10"},"content":" String[] parts \u003d line.substring(\"deadline\".length()).trim().split(\" /by \", 2);","lastModifiedDate":"2024-02-09"},{"lineNumber":49,"author":{"gitId":"lordgareth10"},"content":" drossTaskList.addTask(parts[0], parts[1]);","lastModifiedDate":"2024-02-09"},{"lineNumber":50,"author":{"gitId":"lordgareth10"},"content":" } else if (line.startsWith(\"event\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":51,"author":{"gitId":"lordgareth10"},"content":" String[] parts \u003d line.substring(\"event\".length()).trim().split(\" /from \", 2);","lastModifiedDate":"2024-02-09"},{"lineNumber":52,"author":{"gitId":"lordgareth10"},"content":" String[] timeParts \u003d parts[1].split(\" /to \", 2);","lastModifiedDate":"2024-02-09"},{"lineNumber":53,"author":{"gitId":"lordgareth10"},"content":" drossTaskList.addTask(parts[0], timeParts[0], timeParts[1]);","lastModifiedDate":"2024-02-09"},{"lineNumber":54,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":55,"author":{"gitId":"lordgareth10"},"content":" drossTaskList.printLastTask();","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"lordgareth10"},"content":" printLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":57,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":58,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":59,"author":{"gitId":"lordgareth10"},"content":" //Method to determine what to do based on the input entered","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"lordgareth10"},"content":" public static void receiveUserInput() {","lastModifiedDate":"2024-02-09"},{"lineNumber":61,"author":{"gitId":"lordgareth10"},"content":" String line \u003d readLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":62,"author":{"gitId":"lordgareth10"},"content":" while (!line.equals(\"bye\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":63,"author":{"gitId":"lordgareth10"},"content":" if (line.startsWith(\"list\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":64,"author":{"gitId":"lordgareth10"},"content":" listAllTasks();","lastModifiedDate":"2024-02-09"},{"lineNumber":65,"author":{"gitId":"lordgareth10"},"content":" } else if (line.startsWith(\"mark\") || line.startsWith(\"unmark\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":66,"author":{"gitId":"lordgareth10"},"content":" toggleMark(line);","lastModifiedDate":"2024-02-09"},{"lineNumber":67,"author":{"gitId":"lordgareth10"},"content":" } else if (line.startsWith(\"todo\") || line.startsWith(\"deadline\") || line.startsWith(\"event\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":68,"author":{"gitId":"lordgareth10"},"content":" handleTaskCreation(line);","lastModifiedDate":"2024-02-09"},{"lineNumber":69,"author":{"gitId":"lordgareth10"},"content":" } else {","lastModifiedDate":"2024-02-09"},{"lineNumber":70,"author":{"gitId":"lordgareth10"},"content":" printLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":71,"author":{"gitId":"lordgareth10"},"content":" System.out.println(\"Please enter a valid command\");","lastModifiedDate":"2024-02-09"},{"lineNumber":72,"author":{"gitId":"lordgareth10"},"content":" printLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":73,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":74,"author":{"gitId":"lordgareth10"},"content":" line \u003d readLine();","lastModifiedDate":"2024-02-09"},{"lineNumber":75,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":76,"author":{"gitId":"lordgareth10"},"content":" goodbye();","lastModifiedDate":"2024-02-06"},{"lineNumber":77,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":78,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":79,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":80,"author":{"gitId":"lordgareth10"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-02-06"},{"lineNumber":81,"author":{"gitId":"lordgareth10"},"content":" printLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":82,"author":{"gitId":"lordgareth10"},"content":" System.out.println(\"Hello! I\u0027m Dross\");","lastModifiedDate":"2024-02-06"},{"lineNumber":83,"author":{"gitId":"lordgareth10"},"content":" System.out.println(\"What can I do for you?\");","lastModifiedDate":"2024-02-06"},{"lineNumber":84,"author":{"gitId":"lordgareth10"},"content":" printLine();","lastModifiedDate":"2024-02-06"},{"lineNumber":85,"author":{"gitId":"lordgareth10"},"content":" receiveUserInput();","lastModifiedDate":"2024-02-06"},{"lineNumber":86,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-01-27"},{"lineNumber":87,"author":{"gitId":"lordgareth10"},"content":"}","lastModifiedDate":"2024-01-27"}],"authorContributionMap":{"lordgareth10":87}},{"path":"src/main/java/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"lordgareth10"},"content":"public class Event extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"lordgareth10"},"content":" protected String from;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"lordgareth10"},"content":" protected String to;","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"lordgareth10"},"content":" //Deadline subclass of Task superclass","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"lordgareth10"},"content":" public Event(String description, String from, String to) {","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"lordgareth10"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"lordgareth10"},"content":" this.from \u003d from;","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"lordgareth10"},"content":" this.to \u003d to;","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"lordgareth10"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"lordgareth10"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"lordgareth10"},"content":" String statusMark \u003d this.isCompleted() ? \"x\" : \" \"; // Mark with \u0027x\u0027 if completed","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"lordgareth10"},"content":" return \"[E]\" + \"[\" + statusMark + \"] \" + super.toString() + \" (from: \" + from + \" to: \" + to + \")\";","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"lordgareth10"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"lordgareth10":18}},{"path":"src/main/java/List.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"lordgareth10"},"content":"public class List {","lastModifiedDate":"2024-02-06"},{"lineNumber":2,"author":{"gitId":"lordgareth10"},"content":" private Task[] tasks;","lastModifiedDate":"2024-02-06"},{"lineNumber":3,"author":{"gitId":"lordgareth10"},"content":" private int size;","lastModifiedDate":"2024-02-06"},{"lineNumber":4,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":5,"author":{"gitId":"lordgareth10"},"content":" public List() {","lastModifiedDate":"2024-02-06"},{"lineNumber":6,"author":{"gitId":"lordgareth10"},"content":" this.tasks \u003d new Task[100]; // initial capacity","lastModifiedDate":"2024-02-06"},{"lineNumber":7,"author":{"gitId":"lordgareth10"},"content":" this.size \u003d 0;","lastModifiedDate":"2024-02-06"},{"lineNumber":8,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":9,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":10,"author":{"gitId":"lordgareth10"},"content":" // Overloaded Method to add a deadline to the list","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"lordgareth10"},"content":" public void addTask(String taskDescription, String taskDeadline) {","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"lordgareth10"},"content":" tasks[size] \u003d new Deadline(taskDescription, taskDeadline);","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"lordgareth10"},"content":" size++;","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"lordgareth10"},"content":" // Overloaded Method to add an event to the list","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"lordgareth10"},"content":" public void addTask(String taskDescription, String taskStart, String taskEnd) {","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"lordgareth10"},"content":" tasks[size] \u003d new Event(taskDescription,taskStart, taskEnd);","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"lordgareth10"},"content":" size++;","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"lordgareth10"},"content":" // Method to add a task to the list","lastModifiedDate":"2024-02-06"},{"lineNumber":23,"author":{"gitId":"lordgareth10"},"content":" public void addTask(String taskDescription) {","lastModifiedDate":"2024-02-06"},{"lineNumber":24,"author":{"gitId":"lordgareth10"},"content":" tasks[size] \u003d new ToDo(taskDescription);","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"lordgareth10"},"content":" size++;","lastModifiedDate":"2024-02-06"},{"lineNumber":26,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":27,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":28,"author":{"gitId":"lordgareth10"},"content":" // Method to print the last added task","lastModifiedDate":"2024-02-06"},{"lineNumber":29,"author":{"gitId":"lordgareth10"},"content":" public void printLastTask() {","lastModifiedDate":"2024-02-06"},{"lineNumber":30,"author":{"gitId":"lordgareth10"},"content":" if (size \u003e 0) {","lastModifiedDate":"2024-02-06"},{"lineNumber":31,"author":{"gitId":"lordgareth10"},"content":" System.out.println(\"Last added task: \" + tasks[size - 1]);","lastModifiedDate":"2024-02-06"},{"lineNumber":32,"author":{"gitId":"lordgareth10"},"content":" } else {","lastModifiedDate":"2024-02-06"},{"lineNumber":33,"author":{"gitId":"lordgareth10"},"content":" System.out.println(\"The list is empty.\");","lastModifiedDate":"2024-02-06"},{"lineNumber":34,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":35,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":36,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":37,"author":{"gitId":"lordgareth10"},"content":" //Method to toggle check task as done by index","lastModifiedDate":"2024-02-06"},{"lineNumber":38,"author":{"gitId":"lordgareth10"},"content":" public void markDoneByIndex(int index){","lastModifiedDate":"2024-02-06"},{"lineNumber":39,"author":{"gitId":"lordgareth10"},"content":" tasks[index-1].completeTask();","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":41,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":42,"author":{"gitId":"lordgareth10"},"content":" //Method to toggle check task as undone by index","lastModifiedDate":"2024-02-06"},{"lineNumber":43,"author":{"gitId":"lordgareth10"},"content":" public void markUndoneByIndex(int index){","lastModifiedDate":"2024-02-06"},{"lineNumber":44,"author":{"gitId":"lordgareth10"},"content":" tasks[index-1].uncheckTask();","lastModifiedDate":"2024-02-09"},{"lineNumber":45,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":46,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":47,"author":{"gitId":"lordgareth10"},"content":" // Method to print all tasks","lastModifiedDate":"2024-02-06"},{"lineNumber":48,"author":{"gitId":"lordgareth10"},"content":" public void printAllTasks() {","lastModifiedDate":"2024-02-06"},{"lineNumber":49,"author":{"gitId":"lordgareth10"},"content":" if (size \u003e 0) {","lastModifiedDate":"2024-02-06"},{"lineNumber":50,"author":{"gitId":"lordgareth10"},"content":" System.out.println(\"All tasks:\");","lastModifiedDate":"2024-02-06"},{"lineNumber":51,"author":{"gitId":"lordgareth10"},"content":" for (int i \u003d 0; i \u003c size; i++) {","lastModifiedDate":"2024-02-06"},{"lineNumber":52,"author":{"gitId":"lordgareth10"},"content":" Task currentTask \u003d tasks[i]; // Assuming tasks[i] is a Task object","lastModifiedDate":"2024-02-06"},{"lineNumber":53,"author":{"gitId":"lordgareth10"},"content":" System.out.print((i + 1) + \".\");","lastModifiedDate":"2024-02-09"},{"lineNumber":54,"author":{"gitId":"lordgareth10"},"content":" System.out.println(currentTask);","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":56,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":57,"author":{"gitId":"lordgareth10"},"content":" else {","lastModifiedDate":"2024-02-09"},{"lineNumber":58,"author":{"gitId":"lordgareth10"},"content":" System.out.println(\"The list is empty.\");","lastModifiedDate":"2024-02-06"},{"lineNumber":59,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":60,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":61,"author":{"gitId":"lordgareth10"},"content":"}","lastModifiedDate":"2024-02-06"}],"authorContributionMap":{"lordgareth10":61}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"lordgareth10"},"content":"public class Task {","lastModifiedDate":"2024-02-06"},{"lineNumber":2,"author":{"gitId":"lordgareth10"},"content":" private String description;","lastModifiedDate":"2024-02-06"},{"lineNumber":3,"author":{"gitId":"lordgareth10"},"content":" private boolean isCompleted;","lastModifiedDate":"2024-02-06"},{"lineNumber":4,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":5,"author":{"gitId":"lordgareth10"},"content":" // Constructor","lastModifiedDate":"2024-02-06"},{"lineNumber":6,"author":{"gitId":"lordgareth10"},"content":" public Task(String description) {","lastModifiedDate":"2024-02-06"},{"lineNumber":7,"author":{"gitId":"lordgareth10"},"content":" this.description \u003d description;","lastModifiedDate":"2024-02-06"},{"lineNumber":8,"author":{"gitId":"lordgareth10"},"content":" this.isCompleted \u003d false; // Tasks start as not completed by default","lastModifiedDate":"2024-02-06"},{"lineNumber":9,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":10,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":11,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":12,"author":{"gitId":"lordgareth10"},"content":" // Mark the task as completed","lastModifiedDate":"2024-02-06"},{"lineNumber":13,"author":{"gitId":"lordgareth10"},"content":" public void completeTask() {","lastModifiedDate":"2024-02-06"},{"lineNumber":14,"author":{"gitId":"lordgareth10"},"content":" this.isCompleted \u003d true;","lastModifiedDate":"2024-02-06"},{"lineNumber":15,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":16,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":17,"author":{"gitId":"lordgareth10"},"content":" // Mark the task as not completed (or \"uncheck\" the task)","lastModifiedDate":"2024-02-06"},{"lineNumber":18,"author":{"gitId":"lordgareth10"},"content":" public void uncheckTask() {","lastModifiedDate":"2024-02-06"},{"lineNumber":19,"author":{"gitId":"lordgareth10"},"content":" this.isCompleted \u003d false;","lastModifiedDate":"2024-02-06"},{"lineNumber":20,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":21,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":22,"author":{"gitId":"lordgareth10"},"content":" // Get the task description","lastModifiedDate":"2024-02-06"},{"lineNumber":23,"author":{"gitId":"lordgareth10"},"content":" public String getDescription() {","lastModifiedDate":"2024-02-06"},{"lineNumber":24,"author":{"gitId":"lordgareth10"},"content":" return this.description;","lastModifiedDate":"2024-02-06"},{"lineNumber":25,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":26,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":27,"author":{"gitId":"lordgareth10"},"content":" // Check if the task is completed","lastModifiedDate":"2024-02-06"},{"lineNumber":28,"author":{"gitId":"lordgareth10"},"content":" public boolean isCompleted() {","lastModifiedDate":"2024-02-06"},{"lineNumber":29,"author":{"gitId":"lordgareth10"},"content":" return this.isCompleted;","lastModifiedDate":"2024-02-06"},{"lineNumber":30,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":31,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":32,"author":{"gitId":"lordgareth10"},"content":" public String toString() {","lastModifiedDate":"2024-02-06"},{"lineNumber":33,"author":{"gitId":"lordgareth10"},"content":" return this.description;","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":35,"author":{"gitId":"lordgareth10"},"content":"}","lastModifiedDate":"2024-02-06"}],"authorContributionMap":{"lordgareth10":35}},{"path":"src/main/java/ToDo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"lordgareth10"},"content":"public class ToDo extends Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"lordgareth10"},"content":" //ToDo subclass of Task superclass for item with no deadline or timing","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"lordgareth10"},"content":" public ToDo(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"lordgareth10"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"lordgareth10"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"lordgareth10"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"lordgareth10"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"lordgareth10"},"content":" String statusMark \u003d this.isCompleted() ? \"x\" : \" \"; // Mark with \u0027x\u0027 if completed","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"lordgareth10"},"content":" return \"[T]\" + \"[\" + statusMark + \"] \" + super.toString();","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"lordgareth10"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"lordgareth10"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"lordgareth10":13}}] diff --git a/lordgareth10_ip_master/commits.json b/lordgareth10_ip_master/commits.json index c239fa87..c22cbccf 100644 --- a/lordgareth10_ip_master/commits.json +++ b/lordgareth10_ip_master/commits.json @@ -1 +1 @@ -{"authorDailyContributionsMap":{"lordgareth10":[{"date":"2024-01-27","commitResults":[{"hash":"7958e5ba731c02113e582c8645bcaeb51c569c0c","isMergeCommit":false,"messageTitle":"Update Dross.java","messageBody":"Update Duke to Dross\n","tags":["Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":7,"deletions":10}}}]},{"date":"2024-02-06","commitResults":[{"hash":"fc085a858f2a465f2a99f8f333438979affc5a3a","isMergeCommit":false,"messageTitle":"Make Dross echo","messageBody":"","tags":["Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":17,"deletions":0}}},{"hash":"2b6c178a67efc105b3b7207728280f22889e6890","isMergeCommit":false,"messageTitle":"Create List Class, Create receiveUserInput function","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":100,"deletions":9}}},{"hash":"fdc505c8a702c967c2e9f57e5d2877afbadc818a","isMergeCommit":false,"messageTitle":"Create List Class, Create receiveUserInput function","messageBody":"","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":100,"deletions":9}}},{"hash":"5f87a1ee1e994b6aaca1553c212a81909642f1d9","isMergeCommit":false,"messageTitle":"Add Task Class, Add option to mark/unmark Tasks","messageBody":"","tags":["Level-3"],"fileTypesAndContributionMap":{"java":{"insertions":76,"deletions":18}}},{"hash":"274c479d41deffb2538a6d9f35d1b6f47cfcc4c9","isMergeCommit":false,"messageTitle":"Fix markUndoneByIndex function, fix coding standards","messageBody":"","tags":["A-CodingStandard"],"fileTypesAndContributionMap":{"java":{"insertions":3,"deletions":7}}}]}]},"authorFileTypeContributionMap":{"lordgareth10":{"java":169,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"lordgareth10":5712.6147},"authorDisplayNameMap":{"lordgareth10":"CS2113-F15-4 GARE.. JUN"}} +{"authorDailyContributionsMap":{"lordgareth10":[{"date":"2024-01-27","commitResults":[{"hash":"7958e5ba731c02113e582c8645bcaeb51c569c0c","isMergeCommit":false,"messageTitle":"Update Dross.java","messageBody":"Update Duke to Dross\n","tags":["Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":7,"deletions":10}}}]},{"date":"2024-02-06","commitResults":[{"hash":"fc085a858f2a465f2a99f8f333438979affc5a3a","isMergeCommit":false,"messageTitle":"Make Dross echo","messageBody":"","tags":["Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":17,"deletions":0}}},{"hash":"2b6c178a67efc105b3b7207728280f22889e6890","isMergeCommit":false,"messageTitle":"Create List Class, Create receiveUserInput function","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":100,"deletions":9}}},{"hash":"fdc505c8a702c967c2e9f57e5d2877afbadc818a","isMergeCommit":false,"messageTitle":"Create List Class, Create receiveUserInput function","messageBody":"","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":100,"deletions":9}}},{"hash":"5f87a1ee1e994b6aaca1553c212a81909642f1d9","isMergeCommit":false,"messageTitle":"Add Task Class, Add option to mark/unmark Tasks","messageBody":"","tags":["Level-3"],"fileTypesAndContributionMap":{"java":{"insertions":76,"deletions":18}}},{"hash":"274c479d41deffb2538a6d9f35d1b6f47cfcc4c9","isMergeCommit":false,"messageTitle":"Fix markUndoneByIndex function, fix coding standards","messageBody":"","tags":["A-CodingStandard"],"fileTypesAndContributionMap":{"java":{"insertions":3,"deletions":7}}}]},{"date":"2024-02-09","commitResults":[{"hash":"a12ef19511166d4b22eb0ad143c86df91f3646fe","isMergeCommit":false,"messageTitle":"Add Event, Deadline, Todo classes","messageBody":"","tags":["Level-4"],"fileTypesAndContributionMap":{"java":{"insertions":95,"deletions":10}}},{"hash":"b295420230b1b5f449f9db2c9a5f4067eae9082b","isMergeCommit":false,"messageTitle":"Improve code quality, remove long nested if else statements","messageBody":"","tags":["A-CodeQuality"],"fileTypesAndContributionMap":{"java":{"insertions":42,"deletions":66}}}]}]},"authorFileTypeContributionMap":{"lordgareth10":{"java":230,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"lordgareth10":6630.1177},"authorDisplayNameMap":{"lordgareth10":"CS2113-F15-4 GARE.. JUN"}} diff --git a/mukund1403_ip_master/authorship.json b/mukund1403_ip_master/authorship.json index ef5145cb..4ae7d339 100644 --- a/mukund1403_ip_master/authorship.json +++ b/mukund1403_ip_master/authorship.json @@ -1 +1 @@ -[{"path":"src/main/java/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"mukund1403"},"content":"public class Deadline extends Task{","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"mukund1403"},"content":" private String deadline;","lastModifiedDate":"2024-02-08"},{"lineNumber":3,"author":{"gitId":"mukund1403"},"content":" public Deadline(String description, String deadline){","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"mukund1403"},"content":" super(description + String.format(\"(by:%s)\",deadline));","lastModifiedDate":"2024-02-08"},{"lineNumber":5,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"mukund1403"},"content":" public String taskType(){","lastModifiedDate":"2024-02-08"},{"lineNumber":7,"author":{"gitId":"mukund1403"},"content":" return \"[D]\";","lastModifiedDate":"2024-02-08"},{"lineNumber":8,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":9,"author":{"gitId":"mukund1403"},"content":"}","lastModifiedDate":"2024-02-08"}],"authorContributionMap":{"mukund1403":9}},{"path":"src/main/java/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"mukund1403"},"content":"public class Event extends Task{","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"mukund1403"},"content":" public Event(String description, String from, String to){","lastModifiedDate":"2024-02-08"},{"lineNumber":3,"author":{"gitId":"mukund1403"},"content":" super(description + String.format(\"(from:%s to:%s)\",from,to));","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":5,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"mukund1403"},"content":" public String taskType(){","lastModifiedDate":"2024-02-08"},{"lineNumber":7,"author":{"gitId":"mukund1403"},"content":" return \"[E]\";","lastModifiedDate":"2024-02-08"},{"lineNumber":8,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":9,"author":{"gitId":"mukund1403"},"content":"}","lastModifiedDate":"2024-02-08"}],"authorContributionMap":{"mukund1403":9}},{"path":"src/main/java/MassimoBoi.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"mukund1403"},"content":"import java.util.ArrayList;","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"mukund1403"},"content":"import java.util.List;","lastModifiedDate":"2024-02-08"},{"lineNumber":3,"author":{"gitId":"mukund1403"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"mukund1403"},"content":"public class MassimoBoi {","lastModifiedDate":"2024-02-08"},{"lineNumber":5,"author":{"gitId":"mukund1403"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":7,"author":{"gitId":"mukund1403"},"content":" String logo \u003d \" __ __ _ _ _ \\n\" +","lastModifiedDate":"2024-02-08"},{"lineNumber":8,"author":{"gitId":"mukund1403"},"content":" \"| \\\\/ | __ _ ___ ___(_)_ __ ___ ___ | |__ ___ (_)\\n\" +","lastModifiedDate":"2024-02-08"},{"lineNumber":9,"author":{"gitId":"mukund1403"},"content":" \"| |\\\\/| |/ _` / __/ __| | \u0027_ ` _ \\\\ / _ \\\\ | \u0027_ \\\\ / _ \\\\| |\\n\" +","lastModifiedDate":"2024-02-08"},{"lineNumber":10,"author":{"gitId":"mukund1403"},"content":" \"| | | | (_| \\\\__ \\\\__ \\\\ | | | | | | (_) | | |_) | (_) | |\\n\" +","lastModifiedDate":"2024-02-08"},{"lineNumber":11,"author":{"gitId":"mukund1403"},"content":" \"|_| |_|\\\\__,_|___/___/_|_| |_| |_|\\\\___/ |_.__/ \\\\___/|_|\";","lastModifiedDate":"2024-02-08"},{"lineNumber":12,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":13,"author":{"gitId":"mukund1403"},"content":" System.out.println(\"Hello from\\n\" + logo);","lastModifiedDate":"2024-02-08"},{"lineNumber":14,"author":{"gitId":"mukund1403"},"content":" Scanner myObj \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-08"},{"lineNumber":15,"author":{"gitId":"mukund1403"},"content":" String userInput \u003d \"\";","lastModifiedDate":"2024-02-08"},{"lineNumber":16,"author":{"gitId":"mukund1403"},"content":" List\u003cTask\u003etaskList \u003d new ArrayList\u003c\u003e();","lastModifiedDate":"2024-02-08"},{"lineNumber":17,"author":{"gitId":"mukund1403"},"content":" greet();","lastModifiedDate":"2024-02-08"},{"lineNumber":18,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":19,"author":{"gitId":"mukund1403"},"content":" /*","lastModifiedDate":"2024-02-08"},{"lineNumber":20,"author":{"gitId":"mukund1403"},"content":" * The while loop takes in user input and processes them according to different user inputs","lastModifiedDate":"2024-02-08"},{"lineNumber":21,"author":{"gitId":"mukund1403"},"content":" * List of user inputs: task type, mark and unmark task, list, bye (to end chat)","lastModifiedDate":"2024-02-08"},{"lineNumber":22,"author":{"gitId":"mukund1403"},"content":" */","lastModifiedDate":"2024-02-08"},{"lineNumber":23,"author":{"gitId":"mukund1403"},"content":" while(true){","lastModifiedDate":"2024-02-08"},{"lineNumber":24,"author":{"gitId":"mukund1403"},"content":" userInput \u003d myObj.nextLine();","lastModifiedDate":"2024-02-08"},{"lineNumber":25,"author":{"gitId":"mukund1403"},"content":" if(userInput.equals(\"bye\")){","lastModifiedDate":"2024-02-08"},{"lineNumber":26,"author":{"gitId":"mukund1403"},"content":" goodbye();","lastModifiedDate":"2024-02-08"},{"lineNumber":27,"author":{"gitId":"mukund1403"},"content":" break;","lastModifiedDate":"2024-02-08"},{"lineNumber":28,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":29,"author":{"gitId":"mukund1403"},"content":" handleInput(userInput, taskList);","lastModifiedDate":"2024-02-08"},{"lineNumber":30,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":31,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":32,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":33,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":34,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":35,"author":{"gitId":"mukund1403"},"content":" public static void handleInput(String userInput, List\u003cTask\u003etaskList){","lastModifiedDate":"2024-02-08"},{"lineNumber":36,"author":{"gitId":"mukund1403"},"content":" if(userInput.equals(\"list\")){","lastModifiedDate":"2024-02-08"},{"lineNumber":37,"author":{"gitId":"mukund1403"},"content":" printList(taskList);","lastModifiedDate":"2024-02-08"},{"lineNumber":38,"author":{"gitId":"mukund1403"},"content":" makeHorizontalRow();","lastModifiedDate":"2024-02-08"},{"lineNumber":39,"author":{"gitId":"mukund1403"},"content":" return;","lastModifiedDate":"2024-02-08"},{"lineNumber":40,"author":{"gitId":"mukund1403"},"content":" } else if(userInput.contains(\"unmark\")){","lastModifiedDate":"2024-02-08"},{"lineNumber":41,"author":{"gitId":"mukund1403"},"content":" String[] handleInput \u003d userInput.split(\" \");","lastModifiedDate":"2024-02-08"},{"lineNumber":42,"author":{"gitId":"mukund1403"},"content":" int taskToUnmark \u003d Integer.parseInt(handleInput[1]) - 1;","lastModifiedDate":"2024-02-08"},{"lineNumber":43,"author":{"gitId":"mukund1403"},"content":" taskList.get(taskToUnmark).unmark();","lastModifiedDate":"2024-02-08"},{"lineNumber":44,"author":{"gitId":"mukund1403"},"content":" System.out.printf(\"%s unmarked. Type \u0027list\u0027 to see updated list\\n Type mark [list index] to mark this task\\n\"","lastModifiedDate":"2024-02-08"},{"lineNumber":45,"author":{"gitId":"mukund1403"},"content":" ,taskList.get(taskToUnmark).getDescription());","lastModifiedDate":"2024-02-08"},{"lineNumber":46,"author":{"gitId":"mukund1403"},"content":" makeHorizontalRow();","lastModifiedDate":"2024-02-08"},{"lineNumber":47,"author":{"gitId":"mukund1403"},"content":" return;","lastModifiedDate":"2024-02-08"},{"lineNumber":48,"author":{"gitId":"mukund1403"},"content":" } else if(userInput.contains(\"mark\")){","lastModifiedDate":"2024-02-08"},{"lineNumber":49,"author":{"gitId":"mukund1403"},"content":" String[] handleInput \u003d userInput.split(\" \");","lastModifiedDate":"2024-02-08"},{"lineNumber":50,"author":{"gitId":"mukund1403"},"content":" int taskToMark \u003d Integer.parseInt(handleInput[1]) - 1;","lastModifiedDate":"2024-02-08"},{"lineNumber":51,"author":{"gitId":"mukund1403"},"content":" taskList.get(taskToMark).markAsDone();","lastModifiedDate":"2024-02-08"},{"lineNumber":52,"author":{"gitId":"mukund1403"},"content":" System.out.printf(\"%s marked as done. Type \u0027list\u0027 to see updated list\\n Type unmark [list index] to unmark this task\\n\"","lastModifiedDate":"2024-02-08"},{"lineNumber":53,"author":{"gitId":"mukund1403"},"content":" ,taskList.get(taskToMark).getDescription());","lastModifiedDate":"2024-02-08"},{"lineNumber":54,"author":{"gitId":"mukund1403"},"content":" makeHorizontalRow();","lastModifiedDate":"2024-02-08"},{"lineNumber":55,"author":{"gitId":"mukund1403"},"content":" return;","lastModifiedDate":"2024-02-08"},{"lineNumber":56,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":57,"author":{"gitId":"mukund1403"},"content":" Task newTask;","lastModifiedDate":"2024-02-08"},{"lineNumber":58,"author":{"gitId":"mukund1403"},"content":" if(userInput.contains(\"todo\")){","lastModifiedDate":"2024-02-08"},{"lineNumber":59,"author":{"gitId":"mukund1403"},"content":" String [] handleInput \u003d userInput.split(\" \",2);","lastModifiedDate":"2024-02-08"},{"lineNumber":60,"author":{"gitId":"mukund1403"},"content":" newTask \u003d new ToDo(handleInput[1]);","lastModifiedDate":"2024-02-08"},{"lineNumber":61,"author":{"gitId":"mukund1403"},"content":" taskList.add(newTask);","lastModifiedDate":"2024-02-08"},{"lineNumber":62,"author":{"gitId":"mukund1403"},"content":" } else if(userInput.contains(\"deadline\")){","lastModifiedDate":"2024-02-08"},{"lineNumber":63,"author":{"gitId":"mukund1403"},"content":" String [] handleInput \u003d userInput.split(\" \",2);","lastModifiedDate":"2024-02-08"},{"lineNumber":64,"author":{"gitId":"mukund1403"},"content":" String [] handleDeadline \u003d handleInput[1].split(\"/by\");","lastModifiedDate":"2024-02-08"},{"lineNumber":65,"author":{"gitId":"mukund1403"},"content":" newTask \u003d new Deadline(handleDeadline[0],handleDeadline[1]);","lastModifiedDate":"2024-02-08"},{"lineNumber":66,"author":{"gitId":"mukund1403"},"content":" taskList.add(newTask);","lastModifiedDate":"2024-02-08"},{"lineNumber":67,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":68,"author":{"gitId":"mukund1403"},"content":" else if(userInput.contains(\"event\")){","lastModifiedDate":"2024-02-08"},{"lineNumber":69,"author":{"gitId":"mukund1403"},"content":" String [] getDescription \u003d userInput.split(\" \",3);","lastModifiedDate":"2024-02-08"},{"lineNumber":70,"author":{"gitId":"mukund1403"},"content":" String [] getEvent \u003d getDescription[2].split(\"/from\");","lastModifiedDate":"2024-02-08"},{"lineNumber":71,"author":{"gitId":"mukund1403"},"content":" String [] getFromAndBy \u003d getEvent[1].split(\"/to\");","lastModifiedDate":"2024-02-08"},{"lineNumber":72,"author":{"gitId":"mukund1403"},"content":" newTask \u003d new Event(getDescription[1],getFromAndBy[0],getFromAndBy[1]);","lastModifiedDate":"2024-02-08"},{"lineNumber":73,"author":{"gitId":"mukund1403"},"content":" taskList.add(newTask);","lastModifiedDate":"2024-02-08"},{"lineNumber":74,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":75,"author":{"gitId":"mukund1403"},"content":" else{","lastModifiedDate":"2024-02-08"},{"lineNumber":76,"author":{"gitId":"mukund1403"},"content":" newTask \u003d new Task(userInput);","lastModifiedDate":"2024-02-08"},{"lineNumber":77,"author":{"gitId":"mukund1403"},"content":" taskList.add(newTask);","lastModifiedDate":"2024-02-08"},{"lineNumber":78,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":79,"author":{"gitId":"mukund1403"},"content":" System.out.println(\"Got it! Ya boi has added: \");","lastModifiedDate":"2024-02-08"},{"lineNumber":80,"author":{"gitId":"mukund1403"},"content":" printTask(newTask);","lastModifiedDate":"2024-02-08"},{"lineNumber":81,"author":{"gitId":"mukund1403"},"content":" System.out.printf(\"You now have %d %s in the list\\n\",taskList.size(), taskList.size()\u003d\u003d1?\"task\":\"tasks\");","lastModifiedDate":"2024-02-08"},{"lineNumber":82,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":83,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":84,"author":{"gitId":"mukund1403"},"content":" makeHorizontalRow();","lastModifiedDate":"2024-02-08"},{"lineNumber":85,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":86,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":87,"author":{"gitId":"mukund1403"},"content":" public static void greet(){","lastModifiedDate":"2024-02-08"},{"lineNumber":88,"author":{"gitId":"mukund1403"},"content":" System.out.println(\"\"\"","lastModifiedDate":"2024-02-08"},{"lineNumber":89,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":90,"author":{"gitId":"mukund1403"},"content":" Hello I am Massimo boi! What can I do for you?","lastModifiedDate":"2024-02-08"},{"lineNumber":91,"author":{"gitId":"mukund1403"},"content":" To add task, type the task type (todo,deadline,event) followed by description with following rules:","lastModifiedDate":"2024-02-08"},{"lineNumber":92,"author":{"gitId":"mukund1403"},"content":" 1. For deadline add /by at end of description followed by due date","lastModifiedDate":"2024-02-08"},{"lineNumber":93,"author":{"gitId":"mukund1403"},"content":" 2. For events add /from followed by start date and /to followed by end date","lastModifiedDate":"2024-02-08"},{"lineNumber":94,"author":{"gitId":"mukund1403"},"content":" To check list of tasks, type list.","lastModifiedDate":"2024-02-08"},{"lineNumber":95,"author":{"gitId":"mukund1403"},"content":" To mark as done, type mark [list index]","lastModifiedDate":"2024-02-08"},{"lineNumber":96,"author":{"gitId":"mukund1403"},"content":" \"\"\");","lastModifiedDate":"2024-02-08"},{"lineNumber":97,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":98,"author":{"gitId":"mukund1403"},"content":" makeHorizontalRow();","lastModifiedDate":"2024-02-08"},{"lineNumber":99,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":100,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":101,"author":{"gitId":"mukund1403"},"content":" public static void goodbye(){","lastModifiedDate":"2024-02-08"},{"lineNumber":102,"author":{"gitId":"mukund1403"},"content":" System.out.println(\"This is Massimo boi signing out!\");","lastModifiedDate":"2024-02-08"},{"lineNumber":103,"author":{"gitId":"mukund1403"},"content":" makeHorizontalRow();","lastModifiedDate":"2024-02-08"},{"lineNumber":104,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":105,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":106,"author":{"gitId":"mukund1403"},"content":" public static void makeHorizontalRow(){","lastModifiedDate":"2024-02-08"},{"lineNumber":107,"author":{"gitId":"mukund1403"},"content":" for(int i \u003d 0; i \u003c 50; i++){","lastModifiedDate":"2024-02-08"},{"lineNumber":108,"author":{"gitId":"mukund1403"},"content":" System.out.print(\"-\");","lastModifiedDate":"2024-02-08"},{"lineNumber":109,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":110,"author":{"gitId":"mukund1403"},"content":" System.out.println();","lastModifiedDate":"2024-02-08"},{"lineNumber":111,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":112,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":113,"author":{"gitId":"mukund1403"},"content":" public static void printTask(Task task){","lastModifiedDate":"2024-02-08"},{"lineNumber":114,"author":{"gitId":"mukund1403"},"content":" System.out.printf(\"\"\"","lastModifiedDate":"2024-02-08"},{"lineNumber":115,"author":{"gitId":"mukund1403"},"content":" %s%s %s","lastModifiedDate":"2024-02-08"},{"lineNumber":116,"author":{"gitId":"mukund1403"},"content":" \"\"\",task.taskType(), task.getStatus(), task.getDescription());","lastModifiedDate":"2024-02-08"},{"lineNumber":117,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":118,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":119,"author":{"gitId":"mukund1403"},"content":" public static void printList(List\u003cTask\u003e taskList){","lastModifiedDate":"2024-02-08"},{"lineNumber":120,"author":{"gitId":"mukund1403"},"content":" for(int i \u003d 0; i \u003c taskList.size(); i++){","lastModifiedDate":"2024-02-08"},{"lineNumber":121,"author":{"gitId":"mukund1403"},"content":" System.out.print(i+1 + \". \");","lastModifiedDate":"2024-02-08"},{"lineNumber":122,"author":{"gitId":"mukund1403"},"content":" printTask(taskList.get(i));","lastModifiedDate":"2024-02-08"},{"lineNumber":123,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":124,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":125,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":126,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":127,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":128,"author":{"gitId":"mukund1403"},"content":"}","lastModifiedDate":"2024-02-08"}],"authorContributionMap":{"mukund1403":128}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"mukund1403"},"content":"public class Task {","lastModifiedDate":"2024-02-06"},{"lineNumber":2,"author":{"gitId":"mukund1403"},"content":" private String description;","lastModifiedDate":"2024-02-06"},{"lineNumber":3,"author":{"gitId":"mukund1403"},"content":" private boolean isDone;","lastModifiedDate":"2024-02-06"},{"lineNumber":4,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":5,"author":{"gitId":"mukund1403"},"content":" public Task(String task){","lastModifiedDate":"2024-02-06"},{"lineNumber":6,"author":{"gitId":"mukund1403"},"content":" description \u003d task;","lastModifiedDate":"2024-02-06"},{"lineNumber":7,"author":{"gitId":"mukund1403"},"content":" isDone \u003d false;","lastModifiedDate":"2024-02-06"},{"lineNumber":8,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":9,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":10,"author":{"gitId":"mukund1403"},"content":" public String getStatus(){","lastModifiedDate":"2024-02-06"},{"lineNumber":11,"author":{"gitId":"mukund1403"},"content":" return (isDone ? \"[X]\" : \"[ ]\");","lastModifiedDate":"2024-02-06"},{"lineNumber":12,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":13,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":14,"author":{"gitId":"mukund1403"},"content":" public String getDescription(){","lastModifiedDate":"2024-02-06"},{"lineNumber":15,"author":{"gitId":"mukund1403"},"content":" return (this.description);","lastModifiedDate":"2024-02-08"},{"lineNumber":16,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":17,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":18,"author":{"gitId":"mukund1403"},"content":" public void markAsDone(){","lastModifiedDate":"2024-02-06"},{"lineNumber":19,"author":{"gitId":"mukund1403"},"content":" isDone \u003d true;","lastModifiedDate":"2024-02-06"},{"lineNumber":20,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":21,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":22,"author":{"gitId":"mukund1403"},"content":" public void unmark(){","lastModifiedDate":"2024-02-06"},{"lineNumber":23,"author":{"gitId":"mukund1403"},"content":" isDone \u003d false;","lastModifiedDate":"2024-02-06"},{"lineNumber":24,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":25,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":26,"author":{"gitId":"mukund1403"},"content":" public String taskType(){","lastModifiedDate":"2024-02-08"},{"lineNumber":27,"author":{"gitId":"mukund1403"},"content":" return \"[U]\";","lastModifiedDate":"2024-02-08"},{"lineNumber":28,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":29,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":30,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":31,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":32,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":33,"author":{"gitId":"mukund1403"},"content":"}","lastModifiedDate":"2024-02-06"}],"authorContributionMap":{"mukund1403":33}},{"path":"src/main/java/ToDo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"mukund1403"},"content":"public class ToDo extends Task{","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":3,"author":{"gitId":"mukund1403"},"content":" public ToDo(String task) {","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"mukund1403"},"content":" super(task);","lastModifiedDate":"2024-02-08"},{"lineNumber":5,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":7,"author":{"gitId":"mukund1403"},"content":" public String taskType(){","lastModifiedDate":"2024-02-08"},{"lineNumber":8,"author":{"gitId":"mukund1403"},"content":" return \"[T]\";","lastModifiedDate":"2024-02-08"},{"lineNumber":9,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":10,"author":{"gitId":"mukund1403"},"content":"}","lastModifiedDate":"2024-02-08"}],"authorContributionMap":{"mukund1403":10}}] +[{"path":"src/main/java/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"mukund1403"},"content":"public class Deadline extends Task{","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"mukund1403"},"content":" private String deadline;","lastModifiedDate":"2024-02-08"},{"lineNumber":3,"author":{"gitId":"mukund1403"},"content":" public Deadline(String description, String deadline){","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"mukund1403"},"content":" super(description + String.format(\"(by:%s)\",deadline));","lastModifiedDate":"2024-02-08"},{"lineNumber":5,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"mukund1403"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"mukund1403"},"content":" public String taskType(){","lastModifiedDate":"2024-02-08"},{"lineNumber":8,"author":{"gitId":"mukund1403"},"content":" return \"[D]\";","lastModifiedDate":"2024-02-08"},{"lineNumber":9,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":10,"author":{"gitId":"mukund1403"},"content":"}","lastModifiedDate":"2024-02-08"}],"authorContributionMap":{"mukund1403":10}},{"path":"src/main/java/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"mukund1403"},"content":"public class Event extends Task{","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"mukund1403"},"content":" public Event(String description, String from, String to){","lastModifiedDate":"2024-02-08"},{"lineNumber":3,"author":{"gitId":"mukund1403"},"content":" super(description + String.format(\"(from:%s to:%s)\",from,to));","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":5,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"mukund1403"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"mukund1403"},"content":" public String taskType(){","lastModifiedDate":"2024-02-08"},{"lineNumber":8,"author":{"gitId":"mukund1403"},"content":" return \"[E]\";","lastModifiedDate":"2024-02-08"},{"lineNumber":9,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":10,"author":{"gitId":"mukund1403"},"content":"}","lastModifiedDate":"2024-02-08"}],"authorContributionMap":{"mukund1403":10}},{"path":"src/main/java/MassimoBoi.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"mukund1403"},"content":"import java.util.ArrayList;","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"mukund1403"},"content":"import java.util.List;","lastModifiedDate":"2024-02-08"},{"lineNumber":3,"author":{"gitId":"mukund1403"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"mukund1403"},"content":"public class MassimoBoi {","lastModifiedDate":"2024-02-08"},{"lineNumber":5,"author":{"gitId":"mukund1403"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":7,"author":{"gitId":"mukund1403"},"content":" String logo \u003d \" __ __ _ _ _ \\n\" +","lastModifiedDate":"2024-02-08"},{"lineNumber":8,"author":{"gitId":"mukund1403"},"content":" \"| \\\\/ | __ _ ___ ___(_)_ __ ___ ___ | |__ ___ (_)\\n\" +","lastModifiedDate":"2024-02-08"},{"lineNumber":9,"author":{"gitId":"mukund1403"},"content":" \"| |\\\\/| |/ _` / __/ __| | \u0027_ ` _ \\\\ / _ \\\\ | \u0027_ \\\\ / _ \\\\| |\\n\" +","lastModifiedDate":"2024-02-08"},{"lineNumber":10,"author":{"gitId":"mukund1403"},"content":" \"| | | | (_| \\\\__ \\\\__ \\\\ | | | | | | (_) | | |_) | (_) | |\\n\" +","lastModifiedDate":"2024-02-08"},{"lineNumber":11,"author":{"gitId":"mukund1403"},"content":" \"|_| |_|\\\\__,_|___/___/_|_| |_| |_|\\\\___/ |_.__/ \\\\___/|_|\";","lastModifiedDate":"2024-02-08"},{"lineNumber":12,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":13,"author":{"gitId":"mukund1403"},"content":" System.out.println(\"Hello from\\n\" + logo);","lastModifiedDate":"2024-02-08"},{"lineNumber":14,"author":{"gitId":"mukund1403"},"content":" Scanner myObj \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-08"},{"lineNumber":15,"author":{"gitId":"mukund1403"},"content":" String userInput \u003d \"\";","lastModifiedDate":"2024-02-08"},{"lineNumber":16,"author":{"gitId":"mukund1403"},"content":" List\u003cTask\u003etaskList \u003d new ArrayList\u003c\u003e();","lastModifiedDate":"2024-02-08"},{"lineNumber":17,"author":{"gitId":"mukund1403"},"content":" greet();","lastModifiedDate":"2024-02-08"},{"lineNumber":18,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":19,"author":{"gitId":"mukund1403"},"content":" /*","lastModifiedDate":"2024-02-08"},{"lineNumber":20,"author":{"gitId":"mukund1403"},"content":" * The while loop takes in user input and processes them according to different user inputs","lastModifiedDate":"2024-02-08"},{"lineNumber":21,"author":{"gitId":"mukund1403"},"content":" * List of user inputs: task type, mark and unmark task, list, bye (to end chat)","lastModifiedDate":"2024-02-08"},{"lineNumber":22,"author":{"gitId":"mukund1403"},"content":" */","lastModifiedDate":"2024-02-08"},{"lineNumber":23,"author":{"gitId":"mukund1403"},"content":" while(true){","lastModifiedDate":"2024-02-08"},{"lineNumber":24,"author":{"gitId":"mukund1403"},"content":" userInput \u003d myObj.nextLine();","lastModifiedDate":"2024-02-08"},{"lineNumber":25,"author":{"gitId":"mukund1403"},"content":" if(userInput.equals(\"bye\")){","lastModifiedDate":"2024-02-08"},{"lineNumber":26,"author":{"gitId":"mukund1403"},"content":" goodbye();","lastModifiedDate":"2024-02-08"},{"lineNumber":27,"author":{"gitId":"mukund1403"},"content":" break;","lastModifiedDate":"2024-02-08"},{"lineNumber":28,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":29,"author":{"gitId":"mukund1403"},"content":" handleInput(userInput, taskList);","lastModifiedDate":"2024-02-08"},{"lineNumber":30,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":31,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":32,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":33,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":34,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":35,"author":{"gitId":"mukund1403"},"content":" public static void handleInput(String userInput, List\u003cTask\u003etaskList){","lastModifiedDate":"2024-02-08"},{"lineNumber":36,"author":{"gitId":"mukund1403"},"content":" if(userInput.equals(\"list\")){","lastModifiedDate":"2024-02-08"},{"lineNumber":37,"author":{"gitId":"mukund1403"},"content":" printList(taskList);","lastModifiedDate":"2024-02-08"},{"lineNumber":38,"author":{"gitId":"mukund1403"},"content":" makeHorizontalRow();","lastModifiedDate":"2024-02-08"},{"lineNumber":39,"author":{"gitId":"mukund1403"},"content":" return;","lastModifiedDate":"2024-02-08"},{"lineNumber":40,"author":{"gitId":"mukund1403"},"content":" } else if(userInput.contains(\"unmark\")){","lastModifiedDate":"2024-02-08"},{"lineNumber":41,"author":{"gitId":"mukund1403"},"content":" String[] handleInput \u003d userInput.split(\" \");","lastModifiedDate":"2024-02-08"},{"lineNumber":42,"author":{"gitId":"mukund1403"},"content":" int taskToUnmark \u003d Integer.parseInt(handleInput[1]) - 1;","lastModifiedDate":"2024-02-08"},{"lineNumber":43,"author":{"gitId":"mukund1403"},"content":" taskList.get(taskToUnmark).unmark();","lastModifiedDate":"2024-02-08"},{"lineNumber":44,"author":{"gitId":"mukund1403"},"content":" System.out.printf(\"%s unmarked. Type \u0027list\u0027 to see updated list\\n Type mark [list index] to mark this task\\n\"","lastModifiedDate":"2024-02-08"},{"lineNumber":45,"author":{"gitId":"mukund1403"},"content":" ,taskList.get(taskToUnmark).getDescription());","lastModifiedDate":"2024-02-08"},{"lineNumber":46,"author":{"gitId":"mukund1403"},"content":" makeHorizontalRow();","lastModifiedDate":"2024-02-08"},{"lineNumber":47,"author":{"gitId":"mukund1403"},"content":" return;","lastModifiedDate":"2024-02-08"},{"lineNumber":48,"author":{"gitId":"mukund1403"},"content":" } else if(userInput.contains(\"mark\")){","lastModifiedDate":"2024-02-08"},{"lineNumber":49,"author":{"gitId":"mukund1403"},"content":" String[] handleInput \u003d userInput.split(\" \");","lastModifiedDate":"2024-02-08"},{"lineNumber":50,"author":{"gitId":"mukund1403"},"content":" int taskToMark \u003d Integer.parseInt(handleInput[1]) - 1;","lastModifiedDate":"2024-02-08"},{"lineNumber":51,"author":{"gitId":"mukund1403"},"content":" taskList.get(taskToMark).markAsDone();","lastModifiedDate":"2024-02-08"},{"lineNumber":52,"author":{"gitId":"mukund1403"},"content":" System.out.printf(\"%s marked as done. Type \u0027list\u0027 to see updated list\\n Type unmark [list index] to unmark this task\\n\"","lastModifiedDate":"2024-02-08"},{"lineNumber":53,"author":{"gitId":"mukund1403"},"content":" ,taskList.get(taskToMark).getDescription());","lastModifiedDate":"2024-02-08"},{"lineNumber":54,"author":{"gitId":"mukund1403"},"content":" makeHorizontalRow();","lastModifiedDate":"2024-02-08"},{"lineNumber":55,"author":{"gitId":"mukund1403"},"content":" return;","lastModifiedDate":"2024-02-08"},{"lineNumber":56,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":57,"author":{"gitId":"mukund1403"},"content":" Task newTask;","lastModifiedDate":"2024-02-08"},{"lineNumber":58,"author":{"gitId":"mukund1403"},"content":" if(userInput.contains(\"todo\")){","lastModifiedDate":"2024-02-08"},{"lineNumber":59,"author":{"gitId":"mukund1403"},"content":" String [] handleInput \u003d userInput.split(\" \",2);","lastModifiedDate":"2024-02-08"},{"lineNumber":60,"author":{"gitId":"mukund1403"},"content":" newTask \u003d new ToDo(handleInput[1]);","lastModifiedDate":"2024-02-08"},{"lineNumber":61,"author":{"gitId":"mukund1403"},"content":" taskList.add(newTask);","lastModifiedDate":"2024-02-08"},{"lineNumber":62,"author":{"gitId":"mukund1403"},"content":" } else if(userInput.contains(\"deadline\")){","lastModifiedDate":"2024-02-08"},{"lineNumber":63,"author":{"gitId":"mukund1403"},"content":" String [] handleInput \u003d userInput.split(\" \",2);","lastModifiedDate":"2024-02-08"},{"lineNumber":64,"author":{"gitId":"mukund1403"},"content":" String [] handleDeadline \u003d handleInput[1].split(\"/by\");","lastModifiedDate":"2024-02-08"},{"lineNumber":65,"author":{"gitId":"mukund1403"},"content":" newTask \u003d new Deadline(handleDeadline[0],handleDeadline[1]);","lastModifiedDate":"2024-02-08"},{"lineNumber":66,"author":{"gitId":"mukund1403"},"content":" taskList.add(newTask);","lastModifiedDate":"2024-02-08"},{"lineNumber":67,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":68,"author":{"gitId":"mukund1403"},"content":" else if(userInput.contains(\"event\")){","lastModifiedDate":"2024-02-08"},{"lineNumber":69,"author":{"gitId":"mukund1403"},"content":" String [] getDescription \u003d userInput.split(\" \",3);","lastModifiedDate":"2024-02-08"},{"lineNumber":70,"author":{"gitId":"mukund1403"},"content":" String [] getEvent \u003d getDescription[2].split(\"/from\");","lastModifiedDate":"2024-02-08"},{"lineNumber":71,"author":{"gitId":"mukund1403"},"content":" String [] getFromAndBy \u003d getEvent[1].split(\"/to\");","lastModifiedDate":"2024-02-08"},{"lineNumber":72,"author":{"gitId":"mukund1403"},"content":" newTask \u003d new Event(getDescription[1],getFromAndBy[0],getFromAndBy[1]);","lastModifiedDate":"2024-02-08"},{"lineNumber":73,"author":{"gitId":"mukund1403"},"content":" taskList.add(newTask);","lastModifiedDate":"2024-02-08"},{"lineNumber":74,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":75,"author":{"gitId":"mukund1403"},"content":" else{","lastModifiedDate":"2024-02-08"},{"lineNumber":76,"author":{"gitId":"mukund1403"},"content":" newTask \u003d new Task(userInput);","lastModifiedDate":"2024-02-08"},{"lineNumber":77,"author":{"gitId":"mukund1403"},"content":" taskList.add(newTask);","lastModifiedDate":"2024-02-08"},{"lineNumber":78,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":79,"author":{"gitId":"mukund1403"},"content":" System.out.println(\"Got it! Ya boi has added: \");","lastModifiedDate":"2024-02-08"},{"lineNumber":80,"author":{"gitId":"mukund1403"},"content":" printTask(newTask);","lastModifiedDate":"2024-02-08"},{"lineNumber":81,"author":{"gitId":"mukund1403"},"content":" System.out.printf(\"You now have %d %s in the list\\n\",taskList.size(), taskList.size()\u003d\u003d1?\"task\":\"tasks\");","lastModifiedDate":"2024-02-08"},{"lineNumber":82,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":83,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":84,"author":{"gitId":"mukund1403"},"content":" makeHorizontalRow();","lastModifiedDate":"2024-02-08"},{"lineNumber":85,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":86,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":87,"author":{"gitId":"mukund1403"},"content":" public static void greet(){","lastModifiedDate":"2024-02-08"},{"lineNumber":88,"author":{"gitId":"mukund1403"},"content":" System.out.println(\"\"\"","lastModifiedDate":"2024-02-08"},{"lineNumber":89,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":90,"author":{"gitId":"mukund1403"},"content":" Hello I am Massimo boi! What can I do for you?","lastModifiedDate":"2024-02-08"},{"lineNumber":91,"author":{"gitId":"mukund1403"},"content":" To add task, type the task type (todo,deadline,event) followed by description with following rules:","lastModifiedDate":"2024-02-08"},{"lineNumber":92,"author":{"gitId":"mukund1403"},"content":" 1. For deadline add /by at end of description followed by due date","lastModifiedDate":"2024-02-08"},{"lineNumber":93,"author":{"gitId":"mukund1403"},"content":" 2. For events add /from followed by start date and /to followed by end date","lastModifiedDate":"2024-02-08"},{"lineNumber":94,"author":{"gitId":"mukund1403"},"content":" To check list of tasks, type list.","lastModifiedDate":"2024-02-08"},{"lineNumber":95,"author":{"gitId":"mukund1403"},"content":" To mark as done, type mark [list index]","lastModifiedDate":"2024-02-08"},{"lineNumber":96,"author":{"gitId":"mukund1403"},"content":" \"\"\");","lastModifiedDate":"2024-02-08"},{"lineNumber":97,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":98,"author":{"gitId":"mukund1403"},"content":" makeHorizontalRow();","lastModifiedDate":"2024-02-08"},{"lineNumber":99,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":100,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":101,"author":{"gitId":"mukund1403"},"content":" public static void goodbye(){","lastModifiedDate":"2024-02-08"},{"lineNumber":102,"author":{"gitId":"mukund1403"},"content":" System.out.println(\"This is Massimo boi signing out!\");","lastModifiedDate":"2024-02-08"},{"lineNumber":103,"author":{"gitId":"mukund1403"},"content":" makeHorizontalRow();","lastModifiedDate":"2024-02-08"},{"lineNumber":104,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":105,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":106,"author":{"gitId":"mukund1403"},"content":" public static void makeHorizontalRow(){","lastModifiedDate":"2024-02-08"},{"lineNumber":107,"author":{"gitId":"mukund1403"},"content":" for(int i \u003d 0; i \u003c 50; i++){","lastModifiedDate":"2024-02-08"},{"lineNumber":108,"author":{"gitId":"mukund1403"},"content":" System.out.print(\"-\");","lastModifiedDate":"2024-02-08"},{"lineNumber":109,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":110,"author":{"gitId":"mukund1403"},"content":" System.out.println();","lastModifiedDate":"2024-02-08"},{"lineNumber":111,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":112,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":113,"author":{"gitId":"mukund1403"},"content":" public static void printTask(Task task){","lastModifiedDate":"2024-02-08"},{"lineNumber":114,"author":{"gitId":"mukund1403"},"content":" System.out.printf(\"\"\"","lastModifiedDate":"2024-02-08"},{"lineNumber":115,"author":{"gitId":"mukund1403"},"content":" %s%s %s","lastModifiedDate":"2024-02-08"},{"lineNumber":116,"author":{"gitId":"mukund1403"},"content":" \"\"\",task.taskType(), task.getStatus(), task.getDescription());","lastModifiedDate":"2024-02-08"},{"lineNumber":117,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":118,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":119,"author":{"gitId":"mukund1403"},"content":" public static void printList(List\u003cTask\u003e taskList){","lastModifiedDate":"2024-02-08"},{"lineNumber":120,"author":{"gitId":"mukund1403"},"content":" for(int i \u003d 0; i \u003c taskList.size(); i++){","lastModifiedDate":"2024-02-08"},{"lineNumber":121,"author":{"gitId":"mukund1403"},"content":" System.out.print(i+1 + \". \");","lastModifiedDate":"2024-02-08"},{"lineNumber":122,"author":{"gitId":"mukund1403"},"content":" printTask(taskList.get(i));","lastModifiedDate":"2024-02-08"},{"lineNumber":123,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":124,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":125,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":126,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":127,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":128,"author":{"gitId":"mukund1403"},"content":"}","lastModifiedDate":"2024-02-08"}],"authorContributionMap":{"mukund1403":128}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"mukund1403"},"content":"public class Task {","lastModifiedDate":"2024-02-06"},{"lineNumber":2,"author":{"gitId":"mukund1403"},"content":" private final String description;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"mukund1403"},"content":" private boolean isDone;","lastModifiedDate":"2024-02-06"},{"lineNumber":4,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":5,"author":{"gitId":"mukund1403"},"content":" public Task(String task){","lastModifiedDate":"2024-02-06"},{"lineNumber":6,"author":{"gitId":"mukund1403"},"content":" description \u003d task;","lastModifiedDate":"2024-02-06"},{"lineNumber":7,"author":{"gitId":"mukund1403"},"content":" isDone \u003d false;","lastModifiedDate":"2024-02-06"},{"lineNumber":8,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":9,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":10,"author":{"gitId":"mukund1403"},"content":" public String getStatus(){","lastModifiedDate":"2024-02-06"},{"lineNumber":11,"author":{"gitId":"mukund1403"},"content":" return (isDone ? \"[X]\" : \"[ ]\");","lastModifiedDate":"2024-02-06"},{"lineNumber":12,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":13,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":14,"author":{"gitId":"mukund1403"},"content":" public String getDescription(){","lastModifiedDate":"2024-02-06"},{"lineNumber":15,"author":{"gitId":"mukund1403"},"content":" return (this.description);","lastModifiedDate":"2024-02-08"},{"lineNumber":16,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":17,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":18,"author":{"gitId":"mukund1403"},"content":" public void markAsDone(){","lastModifiedDate":"2024-02-06"},{"lineNumber":19,"author":{"gitId":"mukund1403"},"content":" isDone \u003d true;","lastModifiedDate":"2024-02-06"},{"lineNumber":20,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":21,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":22,"author":{"gitId":"mukund1403"},"content":" public void unmark(){","lastModifiedDate":"2024-02-06"},{"lineNumber":23,"author":{"gitId":"mukund1403"},"content":" isDone \u003d false;","lastModifiedDate":"2024-02-06"},{"lineNumber":24,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-06"},{"lineNumber":25,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":26,"author":{"gitId":"mukund1403"},"content":" public String taskType(){","lastModifiedDate":"2024-02-08"},{"lineNumber":27,"author":{"gitId":"mukund1403"},"content":" return \"[U]\";","lastModifiedDate":"2024-02-08"},{"lineNumber":28,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":29,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":30,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":31,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":32,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-06"},{"lineNumber":33,"author":{"gitId":"mukund1403"},"content":"}","lastModifiedDate":"2024-02-06"}],"authorContributionMap":{"mukund1403":33}},{"path":"src/main/java/ToDo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"mukund1403"},"content":"public class ToDo extends Task{","lastModifiedDate":"2024-02-08"},{"lineNumber":2,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":3,"author":{"gitId":"mukund1403"},"content":" public ToDo(String task) {","lastModifiedDate":"2024-02-08"},{"lineNumber":4,"author":{"gitId":"mukund1403"},"content":" super(task);","lastModifiedDate":"2024-02-08"},{"lineNumber":5,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":6,"author":{"gitId":"mukund1403"},"content":"","lastModifiedDate":"2024-02-08"},{"lineNumber":7,"author":{"gitId":"mukund1403"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"mukund1403"},"content":" public String taskType(){","lastModifiedDate":"2024-02-08"},{"lineNumber":9,"author":{"gitId":"mukund1403"},"content":" return \"[T]\";","lastModifiedDate":"2024-02-08"},{"lineNumber":10,"author":{"gitId":"mukund1403"},"content":" }","lastModifiedDate":"2024-02-08"},{"lineNumber":11,"author":{"gitId":"mukund1403"},"content":"}","lastModifiedDate":"2024-02-08"}],"authorContributionMap":{"mukund1403":11}}] diff --git a/mukund1403_ip_master/commits.json b/mukund1403_ip_master/commits.json index 08b0842c..be2c7ff8 100644 --- a/mukund1403_ip_master/commits.json +++ b/mukund1403_ip_master/commits.json @@ -1 +1 @@ -{"authorDailyContributionsMap":{"mukund1403":[{"date":"2024-02-06","commitResults":[{"hash":"d7bb7c1b83eb4d0da863458f5c2cd2f63ed3bede","isMergeCommit":false,"messageTitle":"update to lvl3 task","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":97,"deletions":0}}}]},{"date":"2024-02-08","commitResults":[{"hash":"4158a240489e64d9d2eb21772b160ab17dd20171","isMergeCommit":false,"messageTitle":"Level-0","messageBody":"","tags":["Level-4","Level-3","Level-2","Level-0","A-CodingStandard"],"fileTypesAndContributionMap":{"java":{"insertions":161,"deletions":79}}}]}]},"authorFileTypeContributionMap":{"mukund1403":{"java":189,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"mukund1403":2933.3784},"authorDisplayNameMap":{"mukund1403":"CS2113-T15-3 AYAG..KUND"}} +{"authorDailyContributionsMap":{"mukund1403":[{"date":"2024-02-06","commitResults":[{"hash":"d7bb7c1b83eb4d0da863458f5c2cd2f63ed3bede","isMergeCommit":false,"messageTitle":"update to lvl3 task","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":97,"deletions":0}}}]},{"date":"2024-02-08","commitResults":[{"hash":"7fd2cf1353c4550f91bdb306dc788263e2d70027","isMergeCommit":false,"messageTitle":"Added todo, deadline, and event functionalities","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":161,"deletions":79}}}]},{"date":"2024-02-09","commitResults":[{"hash":"2722355902d401869f6fb7930f69d5443546fd1e","isMergeCommit":false,"messageTitle":"Added todo, deadline, and events","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":3,"deletions":0}}},{"hash":"f8001fbdf923801ea107321322d1f98e9035a442","isMergeCommit":false,"messageTitle":"Added todo, deadline, and event options.","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1}}}]}]},"authorFileTypeContributionMap":{"mukund1403":{"java":192,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"mukund1403":2805.3389},"authorDisplayNameMap":{"mukund1403":"CS2113-T15-3 AYAG..KUND"}} diff --git a/raajamani_ip_master/authorship.json b/raajamani_ip_master/authorship.json index b2a9dd93..a3ad91fd 100644 --- a/raajamani_ip_master/authorship.json +++ b/raajamani_ip_master/authorship.json @@ -1 +1 @@ -[{"path":"src/main/java/Duke.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"raajamani"},"content":"// Assuming other class definitions remain the same","lastModifiedDate":"2024-02-07"},{"lineNumber":2,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":3,"author":{"gitId":"-"},"content":"public class Duke {","lastModifiedDate":"2024-02-07"},{"lineNumber":4,"author":{"gitId":"raajamani"},"content":" private static final String LINE_SEPARATOR \u003d \"____________________________________________________________\";","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"raajamani"},"content":" private static final List\u003cTask\u003e tasks \u003d new ArrayList\u003c\u003e();","lastModifiedDate":"2024-02-07"},{"lineNumber":6,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":7,"author":{"gitId":"-"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-02-07"},{"lineNumber":8,"author":{"gitId":"raajamani"},"content":" Scanner scanner \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-07"},{"lineNumber":9,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":10,"author":{"gitId":"raajamani"},"content":" printWelcomeMessage();","lastModifiedDate":"2024-02-07"},{"lineNumber":11,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":12,"author":{"gitId":"raajamani"},"content":" boolean isRunning \u003d true;","lastModifiedDate":"2024-02-07"},{"lineNumber":13,"author":{"gitId":"raajamani"},"content":" while (isRunning) {","lastModifiedDate":"2024-02-07"},{"lineNumber":14,"author":{"gitId":"raajamani"},"content":" String input \u003d scanner.nextLine();","lastModifiedDate":"2024-02-07"},{"lineNumber":15,"author":{"gitId":"raajamani"},"content":" printLineSeparator();","lastModifiedDate":"2024-02-07"},{"lineNumber":16,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":17,"author":{"gitId":"raajamani"},"content":" if (\"bye\".equalsIgnoreCase(input)) {","lastModifiedDate":"2024-02-07"},{"lineNumber":18,"author":{"gitId":"raajamani"},"content":" isRunning \u003d false;","lastModifiedDate":"2024-02-07"},{"lineNumber":19,"author":{"gitId":"raajamani"},"content":" } else if (\"list\".equalsIgnoreCase(input)) {","lastModifiedDate":"2024-02-07"},{"lineNumber":20,"author":{"gitId":"raajamani"},"content":" listTasks();","lastModifiedDate":"2024-02-07"},{"lineNumber":21,"author":{"gitId":"raajamani"},"content":" } else {","lastModifiedDate":"2024-02-07"},{"lineNumber":22,"author":{"gitId":"raajamani"},"content":" handleTaskInput(input);","lastModifiedDate":"2024-02-07"},{"lineNumber":23,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":24,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":25,"author":{"gitId":"raajamani"},"content":" printLineSeparator();","lastModifiedDate":"2024-02-07"},{"lineNumber":26,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":27,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":28,"author":{"gitId":"raajamani"},"content":" printGoodbyeMessage();","lastModifiedDate":"2024-02-07"},{"lineNumber":29,"author":{"gitId":"raajamani"},"content":" scanner.close();","lastModifiedDate":"2024-02-07"},{"lineNumber":30,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":31,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":32,"author":{"gitId":"raajamani"},"content":" private static void printWelcomeMessage() {","lastModifiedDate":"2024-02-07"},{"lineNumber":33,"author":{"gitId":"raajamani"},"content":" printLineSeparator();","lastModifiedDate":"2024-02-07"},{"lineNumber":34,"author":{"gitId":"raajamani"},"content":" System.out.println(\"Hello! I\u0027m Duke\");","lastModifiedDate":"2024-02-07"},{"lineNumber":35,"author":{"gitId":"raajamani"},"content":" System.out.println(\"What can I do for you?\");","lastModifiedDate":"2024-02-07"},{"lineNumber":36,"author":{"gitId":"raajamani"},"content":" printLineSeparator();","lastModifiedDate":"2024-02-07"},{"lineNumber":37,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":38,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":39,"author":{"gitId":"raajamani"},"content":" private static void printGoodbyeMessage() {","lastModifiedDate":"2024-02-07"},{"lineNumber":40,"author":{"gitId":"raajamani"},"content":" System.out.println(\"Bye. Hope to see you again soon!\");","lastModifiedDate":"2024-02-07"},{"lineNumber":41,"author":{"gitId":"raajamani"},"content":" printLineSeparator();","lastModifiedDate":"2024-02-07"},{"lineNumber":42,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":43,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":44,"author":{"gitId":"raajamani"},"content":" private static void listTasks() {","lastModifiedDate":"2024-02-07"},{"lineNumber":45,"author":{"gitId":"raajamani"},"content":" System.out.println(\"Here are the tasks in your list:\");","lastModifiedDate":"2024-02-07"},{"lineNumber":46,"author":{"gitId":"raajamani"},"content":" for (int i \u003d 0; i \u003c tasks.size(); i++) {","lastModifiedDate":"2024-02-07"},{"lineNumber":47,"author":{"gitId":"raajamani"},"content":" System.out.println((i + 1) + \".\" + tasks.get(i));","lastModifiedDate":"2024-02-07"},{"lineNumber":48,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":49,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":50,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":51,"author":{"gitId":"raajamani"},"content":" private static void handleTaskInput(String input) {","lastModifiedDate":"2024-02-07"},{"lineNumber":52,"author":{"gitId":"raajamani"},"content":" if (input.startsWith(\"todo\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":53,"author":{"gitId":"raajamani"},"content":" addTask(new Todo(input.substring(5)));","lastModifiedDate":"2024-02-07"},{"lineNumber":54,"author":{"gitId":"raajamani"},"content":" } else if (input.startsWith(\"deadline\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":55,"author":{"gitId":"raajamani"},"content":" String[] parts \u003d input.substring(9).split(\" /by \");","lastModifiedDate":"2024-02-07"},{"lineNumber":56,"author":{"gitId":"raajamani"},"content":" addTask(new Deadline(parts[0], parts[1]));","lastModifiedDate":"2024-02-07"},{"lineNumber":57,"author":{"gitId":"raajamani"},"content":" } else if (input.startsWith(\"event\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":58,"author":{"gitId":"raajamani"},"content":" String[] parts \u003d input.substring(6).split(\" /from \");","lastModifiedDate":"2024-02-07"},{"lineNumber":59,"author":{"gitId":"raajamani"},"content":" addTask(new Event(parts[0], parts[1]));","lastModifiedDate":"2024-02-07"},{"lineNumber":60,"author":{"gitId":"raajamani"},"content":" } else if (input.startsWith(\"mark\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":61,"author":{"gitId":"raajamani"},"content":" markTask(Integer.parseInt(input.substring(5)) - 1);","lastModifiedDate":"2024-02-07"},{"lineNumber":62,"author":{"gitId":"raajamani"},"content":" } else if (input.startsWith(\"unmark\")) {","lastModifiedDate":"2024-02-07"},{"lineNumber":63,"author":{"gitId":"raajamani"},"content":" unmarkTask(Integer.parseInt(input.substring(7)) - 1);","lastModifiedDate":"2024-02-07"},{"lineNumber":64,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":65,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":66,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":67,"author":{"gitId":"raajamani"},"content":" private static void addTask(Task task) {","lastModifiedDate":"2024-02-07"},{"lineNumber":68,"author":{"gitId":"raajamani"},"content":" tasks.add(task);","lastModifiedDate":"2024-02-07"},{"lineNumber":69,"author":{"gitId":"raajamani"},"content":" System.out.println(\"Got it. I\u0027ve added this task:\");","lastModifiedDate":"2024-02-07"},{"lineNumber":70,"author":{"gitId":"raajamani"},"content":" System.out.println(\" \" + task);","lastModifiedDate":"2024-02-07"},{"lineNumber":71,"author":{"gitId":"raajamani"},"content":" System.out.println(\"Now you have \" + tasks.size() + \" tasks in the list.\");","lastModifiedDate":"2024-02-07"},{"lineNumber":72,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":73,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":74,"author":{"gitId":"raajamani"},"content":" private static void markTask(int taskIndex) {","lastModifiedDate":"2024-02-07"},{"lineNumber":75,"author":{"gitId":"raajamani"},"content":" Task task \u003d tasks.get(taskIndex);","lastModifiedDate":"2024-02-07"},{"lineNumber":76,"author":{"gitId":"raajamani"},"content":" task.markAsDone();","lastModifiedDate":"2024-02-07"},{"lineNumber":77,"author":{"gitId":"raajamani"},"content":" System.out.println(\"Nice! I\u0027ve marked this task as done:\");","lastModifiedDate":"2024-02-07"},{"lineNumber":78,"author":{"gitId":"raajamani"},"content":" System.out.println(\" \" + task);","lastModifiedDate":"2024-02-07"},{"lineNumber":79,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":80,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":81,"author":{"gitId":"raajamani"},"content":" private static void unmarkTask(int taskIndex) {","lastModifiedDate":"2024-02-07"},{"lineNumber":82,"author":{"gitId":"raajamani"},"content":" Task task \u003d tasks.get(taskIndex);","lastModifiedDate":"2024-02-07"},{"lineNumber":83,"author":{"gitId":"raajamani"},"content":" task.markAsDone();","lastModifiedDate":"2024-02-07"},{"lineNumber":84,"author":{"gitId":"raajamani"},"content":" System.out.println(\"OK, I\u0027ve marked this task as not done yet:\");","lastModifiedDate":"2024-02-07"},{"lineNumber":85,"author":{"gitId":"raajamani"},"content":" System.out.println(\" \" + task);","lastModifiedDate":"2024-02-07"},{"lineNumber":86,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-07"},{"lineNumber":87,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":88,"author":{"gitId":"raajamani"},"content":" private static void printLineSeparator() {","lastModifiedDate":"2024-02-07"},{"lineNumber":89,"author":{"gitId":"raajamani"},"content":" System.out.println(LINE_SEPARATOR);","lastModifiedDate":"2024-02-07"},{"lineNumber":90,"author":{"gitId":"-"},"content":" }","lastModifiedDate":"2019-07-29"},{"lineNumber":91,"author":{"gitId":"-"},"content":"}","lastModifiedDate":"2019-07-29"},{"lineNumber":92,"author":{"gitId":"raajamani"},"content":"// Testing CodeQ","lastModifiedDate":"2024-02-07"}],"authorContributionMap":{"raajamani":88,"-":4}}] +[{"path":"src/main/java/Constants.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"raajamani"},"content":"public class Constants {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"raajamani"},"content":"\t// Logo","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"raajamani"},"content":"\tpublic static final String LOGO \u003d \" \\n\"","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"raajamani"},"content":" + \" ________ ________ ___ ________ ________ \\n\"","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"raajamani"},"content":" + \" |\\\\ __ \\\\|\\\\ __ \\\\|\\\\ \\\\|\\\\ __ \\\\|\\\\ ___ \\\\ \\n\"","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"raajamani"},"content":" + \" \\\\ \\\\ \\\\|\\\\ \\\\ \\\\ \\\\|\\\\ \\\\ \\\\ \\\\ \\\\ \\\\|\\\\ \\\\ \\\\ \\\\\\\\ \\\\ \\\\ \\n\"","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"raajamani"},"content":" + \" \\\\ \\\\ \\\\ \\\\ \\\\ \\\\ _ _\\\\ \\\\ \\\\ \\\\ \\\\ \\\\ \\\\ \\\\ \\\\\\\\ \\\\ \\\\ \\n\"","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"raajamani"},"content":" + \" \\\\ \\\\ \\\\ \\\\ \\\\ \\\\ \\\\\\\\ \\\\\\\\ \\\\ \\\\ \\\\ \\\\ \\\\ \\\\ \\\\ \\\\\\\\ \\\\ \\\\ \\n\"","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"raajamani"},"content":" + \" \\\\ \\\\_______\\\\ \\\\__\\\\\\\\ _\\\\\\\\ \\\\__\\\\ \\\\_______\\\\ \\\\__\\\\\\\\ \\\\__\\\\ \\n\"","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"raajamani"},"content":" + \" \\\\|_______|\\\\|__|\\\\|__|\\\\|__|\\\\|_______|\\\\|__| \\\\|__| \\n\";","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"raajamani"},"content":" // Border line","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"raajamani"},"content":"\tpublic static final String LINE \u003d \"____________________________________________________________\";","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"raajamani"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"raajamani":15}},{"path":"src/main/java/Duke.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"raajamani"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"raajamani"},"content":"import java.util.ArrayList;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"-"},"content":"public class Duke {","lastModifiedDate":"2024-02-07"},{"lineNumber":5,"author":{"gitId":"raajamani"},"content":" private static final ArrayList\u003cTask\u003e TASKS \u003d new ArrayList\u003c\u003e();","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":7,"author":{"gitId":"raajamani"},"content":" // Main method - entry point of the Duke application.","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"-"},"content":" public static void main(String[] args) {","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"raajamani"},"content":" printWelcomeMessage();","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"raajamani"},"content":" Scanner scanner \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"raajamani"},"content":" String input;","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":13,"author":{"gitId":"raajamani"},"content":" // Main loop for command processing.","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"raajamani"},"content":" while (true) {","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"raajamani"},"content":" input \u003d scanner.nextLine().trim();","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"raajamani"},"content":" if (\"bye\".equalsIgnoreCase(input)) {","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"raajamani"},"content":" printGoodbyeMessage();","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"raajamani"},"content":" break;","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"raajamani"},"content":" processInput(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"raajamani"},"content":" scanner.close();","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"raajamani"},"content":" // Processes the user input and calls the respective method.","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"raajamani"},"content":" private static void processInput(String input) {","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"raajamani"},"content":" System.out.println(\" \" + Constants.LINE);","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"raajamani"},"content":" if (input.startsWith(\"list\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"raajamani"},"content":" listTasks();","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"raajamani"},"content":" } else if (input.startsWith(\"mark\") || input.startsWith(\"unmark\")) {","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"raajamani"},"content":" // Extracts the task number and marks or unmarks the task.","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"raajamani"},"content":" markTask(input, input.startsWith(\"mark\"));","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"raajamani"},"content":" } else {","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"raajamani"},"content":" addTask(input);","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"raajamani"},"content":" System.out.println(\" \" + Constants.LINE);","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-07"},{"lineNumber":39,"author":{"gitId":"raajamani"},"content":" // Adds a new task to the list.","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"raajamani"},"content":" private static void addTask(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"raajamani"},"content":" Task newTask \u003d new Task(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":42,"author":{"gitId":"raajamani"},"content":" TASKS.add(newTask);","lastModifiedDate":"2024-02-09"},{"lineNumber":43,"author":{"gitId":"raajamani"},"content":" System.out.println(\" added: \" + description);","lastModifiedDate":"2024-02-09"},{"lineNumber":44,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":45,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":46,"author":{"gitId":"raajamani"},"content":" // Lists all tasks currently in the list.","lastModifiedDate":"2024-02-09"},{"lineNumber":47,"author":{"gitId":"raajamani"},"content":" private static void listTasks() {","lastModifiedDate":"2024-02-09"},{"lineNumber":48,"author":{"gitId":"raajamani"},"content":" System.out.println(\" Here are the tasks in your list:\");","lastModifiedDate":"2024-02-09"},{"lineNumber":49,"author":{"gitId":"raajamani"},"content":" for (int i \u003d 0; i \u003c TASKS.size(); i++) {","lastModifiedDate":"2024-02-09"},{"lineNumber":50,"author":{"gitId":"raajamani"},"content":" System.out.println(\" \" + (i + 1) + \".\" + TASKS.get(i));","lastModifiedDate":"2024-02-09"},{"lineNumber":51,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":52,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":53,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":54,"author":{"gitId":"raajamani"},"content":" // Marks or unmarks a task as done/not done based on the user input.","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"raajamani"},"content":" private static void markTask(String input, boolean isDone) {","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"raajamani"},"content":" try {","lastModifiedDate":"2024-02-09"},{"lineNumber":57,"author":{"gitId":"raajamani"},"content":" int taskNumber \u003d Integer.parseInt(input.split(\" \")[1]) - 1;","lastModifiedDate":"2024-02-09"},{"lineNumber":58,"author":{"gitId":"raajamani"},"content":" Task task \u003d TASKS.get(taskNumber);","lastModifiedDate":"2024-02-09"},{"lineNumber":59,"author":{"gitId":"raajamani"},"content":" task.setDone(isDone);","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"raajamani"},"content":" System.out.println(\" Nice! I\u0027ve marked this task as \" + (isDone ? \"done:\" : \"not done yet:\"));","lastModifiedDate":"2024-02-09"},{"lineNumber":61,"author":{"gitId":"raajamani"},"content":" System.out.println(\" \" + task);","lastModifiedDate":"2024-02-09"},{"lineNumber":62,"author":{"gitId":"raajamani"},"content":" } catch (NumberFormatException e) {","lastModifiedDate":"2024-02-09"},{"lineNumber":63,"author":{"gitId":"raajamani"},"content":" System.out.println(\" Please enter a valid task number to mark.\");","lastModifiedDate":"2024-02-09"},{"lineNumber":64,"author":{"gitId":"raajamani"},"content":" } catch (IndexOutOfBoundsException e) {","lastModifiedDate":"2024-02-09"},{"lineNumber":65,"author":{"gitId":"raajamani"},"content":" System.out.println(\" Task number is invalid.\");","lastModifiedDate":"2024-02-09"},{"lineNumber":66,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":67,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":68,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":69,"author":{"gitId":"raajamani"},"content":" // Prints the welcome message to the user.","lastModifiedDate":"2024-02-09"},{"lineNumber":70,"author":{"gitId":"raajamani"},"content":" private static void printWelcomeMessage() {","lastModifiedDate":"2024-02-09"},{"lineNumber":71,"author":{"gitId":"raajamani"},"content":" System.out.println(\" \" + Constants.LOGO);","lastModifiedDate":"2024-02-09"},{"lineNumber":72,"author":{"gitId":"raajamani"},"content":" System.out.println(\" \" + Constants.LINE);","lastModifiedDate":"2024-02-09"},{"lineNumber":73,"author":{"gitId":"raajamani"},"content":" System.out.println(\" Hello! I\u0027m Duke\\n What can I do for you?\");","lastModifiedDate":"2024-02-09"},{"lineNumber":74,"author":{"gitId":"raajamani"},"content":" System.out.println(\" \" + Constants.LINE);","lastModifiedDate":"2024-02-09"},{"lineNumber":75,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":76,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":77,"author":{"gitId":"raajamani"},"content":" // Prints the goodbye message to the user.","lastModifiedDate":"2024-02-09"},{"lineNumber":78,"author":{"gitId":"raajamani"},"content":" private static void printGoodbyeMessage() {","lastModifiedDate":"2024-02-09"},{"lineNumber":79,"author":{"gitId":"raajamani"},"content":" System.out.println(\" Bye. Hope to see you again soon!\");","lastModifiedDate":"2024-02-09"},{"lineNumber":80,"author":{"gitId":"raajamani"},"content":" System.out.println(\" \" + Constants.LINE);","lastModifiedDate":"2024-02-09"},{"lineNumber":81,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":82,"author":{"gitId":"-"},"content":"}","lastModifiedDate":"2019-07-29"}],"authorContributionMap":{"raajamani":79,"-":3}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"raajamani"},"content":"public class Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"raajamani"},"content":" protected String description;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"raajamani"},"content":" protected boolean isDone;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"raajamani"},"content":" // Constructor initializes the task with a description and sets its status to not done.","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"raajamani"},"content":" public Task(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"raajamani"},"content":" this.description \u003d description;","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"raajamani"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"raajamani"},"content":" // Sets the task\u0027s done status.","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"raajamani"},"content":" public void setDone(boolean done) {","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"raajamani"},"content":" isDone \u003d done;","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"raajamani"},"content":" // Returns a status icon depending on whether the task is done.","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"raajamani"},"content":" public String getStatusIcon() {","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"raajamani"},"content":" return (isDone ? \"[X]\" : \"[ ]\");","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"raajamani"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"raajamani"},"content":" // Overrides toString to return the task\u0027s status icon and description.","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"raajamani"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"raajamani"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"raajamani"},"content":" return getStatusIcon() + \" \" + description;","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"raajamani"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"raajamani"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"raajamani":26}}] diff --git a/raajamani_ip_master/commits.json b/raajamani_ip_master/commits.json index cef6f3eb..536b360d 100644 --- a/raajamani_ip_master/commits.json +++ b/raajamani_ip_master/commits.json @@ -1 +1 @@ -{"authorDailyContributionsMap":{"raajamani":[{"date":"2024-02-05","commitResults":[{"hash":"00ad1dfad89648f544b30bc822d4524cea37eb7a","isMergeCommit":false,"messageTitle":"[raajamani] iP","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":0}}}]},{"date":"2024-02-07","commitResults":[{"hash":"d548bf4868110068477f7fe46b70e39afa86da01","isMergeCommit":false,"messageTitle":"Level 0. Rename, Greet, Exit","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":17,"deletions":7}}},{"hash":"47f57d63509dfac3be63fd63cf436e623813e5ec","isMergeCommit":false,"messageTitle":"Level 1. Echo","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":25,"deletions":11}}},{"hash":"3d189e2b8e7fe11ff288e0a80513a00a03a6ce1f","isMergeCommit":false,"messageTitle":"Level 2. Add, List","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":18,"deletions":5}}},{"hash":"8a7239b622f8a50fc56241dec37dffc2495543e0","isMergeCommit":false,"messageTitle":"Level 3. Mark as Done","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":54,"deletions":18}}},{"hash":"a11a8e2781f149e489a228ab43012e089914c65e","isMergeCommit":false,"messageTitle":"A-CodingStandard","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":25,"deletions":19}}},{"hash":"2626335baa6ada06e62552fbe7b046aa8a8b46e5","isMergeCommit":false,"messageTitle":"Level 4. ToDos, Events, Deadlines","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":69,"deletions":28}}},{"hash":"4a1a188e749fb51be9e60a3f62df2ce683d54cc4","isMergeCommit":false,"messageTitle":"A-CodeQuality","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":69,"deletions":109}}},{"hash":"77679074f8b4923e02f12761adcea9ef0d997dfc","isMergeCommit":false,"messageTitle":"Level-0","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":0}}},{"hash":"f26e27fc02d9a1334b0e77740ef47a181ec3d80e","isMergeCommit":false,"messageTitle":"Level-1","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1}}},{"hash":"e52529adc942f31b5574c83656e1a809b14cdac1","isMergeCommit":false,"messageTitle":"Level-2","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1}}},{"hash":"e5c13cd0bc2db2bdcee90317cb6abeeb4a74b44a","isMergeCommit":false,"messageTitle":"Level-3","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1}}},{"hash":"dd24d9de2e7bb781d92c9c3d0356b89c5fbcff37","isMergeCommit":false,"messageTitle":"A-CodingStandard","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1}}},{"hash":"59270fce77d4f6e2632d88eea081e900e74567e5","isMergeCommit":false,"messageTitle":"Level-4","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1}}},{"hash":"a2a4a7f6651b3b6aeba0999b91274fe14ffc34b8","isMergeCommit":false,"messageTitle":"A-CodeQuality","messageBody":"","tags":["Level-4","Level-3","Level-2","Level-1","Level-0","A-CodingStandard","A-CodeQuality"],"fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1}}}]}]},"authorFileTypeContributionMap":{"raajamani":{"java":88,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"raajamani":11263.141},"authorDisplayNameMap":{"raajamani":"CS2113T-T09-4 R M ..MANI"}} +{"authorDailyContributionsMap":{"raajamani":[{"date":"2024-02-05","commitResults":[{"hash":"00ad1dfad89648f544b30bc822d4524cea37eb7a","isMergeCommit":false,"messageTitle":"[raajamani] iP","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":0}}}]},{"date":"2024-02-07","commitResults":[{"hash":"d548bf4868110068477f7fe46b70e39afa86da01","isMergeCommit":false,"messageTitle":"Level 0. Rename, Greet, Exit","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":17,"deletions":7}}},{"hash":"47f57d63509dfac3be63fd63cf436e623813e5ec","isMergeCommit":false,"messageTitle":"Level 1. Echo","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":25,"deletions":11}}},{"hash":"3d189e2b8e7fe11ff288e0a80513a00a03a6ce1f","isMergeCommit":false,"messageTitle":"Level 2. Add, List","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":18,"deletions":5}}},{"hash":"8a7239b622f8a50fc56241dec37dffc2495543e0","isMergeCommit":false,"messageTitle":"Level 3. Mark as Done","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":54,"deletions":18}}},{"hash":"a11a8e2781f149e489a228ab43012e089914c65e","isMergeCommit":false,"messageTitle":"A-CodingStandard","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":25,"deletions":19}}},{"hash":"2626335baa6ada06e62552fbe7b046aa8a8b46e5","isMergeCommit":false,"messageTitle":"Level 4. ToDos, Events, Deadlines","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":69,"deletions":28}}},{"hash":"4a1a188e749fb51be9e60a3f62df2ce683d54cc4","isMergeCommit":false,"messageTitle":"A-CodeQuality","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":69,"deletions":109}}},{"hash":"77679074f8b4923e02f12761adcea9ef0d997dfc","isMergeCommit":false,"messageTitle":"Level-0","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":0}}},{"hash":"f26e27fc02d9a1334b0e77740ef47a181ec3d80e","isMergeCommit":false,"messageTitle":"Level-1","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1}}},{"hash":"e52529adc942f31b5574c83656e1a809b14cdac1","isMergeCommit":false,"messageTitle":"Level-2","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1}}},{"hash":"e5c13cd0bc2db2bdcee90317cb6abeeb4a74b44a","isMergeCommit":false,"messageTitle":"Level-3","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1}}},{"hash":"dd24d9de2e7bb781d92c9c3d0356b89c5fbcff37","isMergeCommit":false,"messageTitle":"A-CodingStandard","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1}}},{"hash":"59270fce77d4f6e2632d88eea081e900e74567e5","isMergeCommit":false,"messageTitle":"Level-4","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1}}},{"hash":"a2a4a7f6651b3b6aeba0999b91274fe14ffc34b8","isMergeCommit":false,"messageTitle":"A-CodeQuality","messageBody":"","tags":["Level-4","A-CodeQuality"],"fileTypesAndContributionMap":{"java":{"insertions":1,"deletions":1}}}]},{"date":"2024-02-09","commitResults":[{"hash":"352b64e75fc3b1adf975718fd521363582810633","isMergeCommit":false,"messageTitle":"Level 0: Rename, Greet, Exit (New)","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":20,"deletions":80}}},{"hash":"bf743c926ef1027c92e7d11be808e64a81542a9a","isMergeCommit":false,"messageTitle":"Level 2 - Add, List (New)","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":38,"deletions":24}}},{"hash":"f7da7fd248245266b254900d484729a414cad03a","isMergeCommit":false,"messageTitle":"Level 2 - Add, List (New)","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":52,"deletions":18}}},{"hash":"46968f233d227d69add298d2d5f82292602b01ef","isMergeCommit":false,"messageTitle":"Level 0 - Rename, Greet, Exit (New)","messageBody":"","tags":["Level-0"],"fileTypesAndContributionMap":{"java":{"insertions":20,"deletions":80}}},{"hash":"a20a7364bd123ccae92ae308c668535567ee564f","isMergeCommit":false,"messageTitle":"Level 1 - Echo (New)","messageBody":"","tags":["Level-1"],"fileTypesAndContributionMap":{"java":{"insertions":38,"deletions":24}}},{"hash":"94f27f7849440a9cd5fe80d8be60e4d5607f1a94","isMergeCommit":false,"messageTitle":"Level 2 - Add, List (New)","messageBody":"","tags":["Level-2"],"fileTypesAndContributionMap":{"java":{"insertions":52,"deletions":18}}},{"hash":"9522cece49e81a307879367ca68fc9471a20b1d0","isMergeCommit":false,"messageTitle":"Level 3 - Mark as Done","messageBody":"","tags":["Level-3"],"fileTypesAndContributionMap":{"java":{"insertions":82,"deletions":28}}},{"hash":"a7c0a66c3a754ab895158a5754f54d91bbc11a5a","isMergeCommit":false,"messageTitle":"A-CodingStandard","messageBody":"","tags":["A-CodingStandard"],"fileTypesAndContributionMap":{"java":{"insertions":60,"deletions":71}}}]}]},"authorFileTypeContributionMap":{"raajamani":{"java":120,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"raajamani":30431.904},"authorDisplayNameMap":{"raajamani":"CS2113T-T09-4 R M ..MANI"}} diff --git a/reposense-logs/reposense.log.0 b/reposense-logs/reposense.log.0 index 81c09ffb..40ae20e1 100644 --- a/reposense-logs/reposense.log.0 +++ b/reposense-logs/reposense.log.0 @@ -1,30 +1,30 @@ -Feb 09, 2024 2:55:28 AM reposense.system.LogsManager addFileHandler +Feb 09, 2024 8:57:47 AM reposense.system.LogsManager addFileHandler INFO: Log temp folder has been successfully created -Feb 09, 2024 2:55:29 AM reposense.parser.CsvParser validateHeader +Feb 09, 2024 8:57:47 AM reposense.parser.CsvParser validateHeader INFO: Parsed header of CSV file, repo-config.csv, and recognized columns: Ignore Standalone Config, Repository's Location, Branch, Shallow Cloning, File formats, Ignore Glob List, Ignore Authors List, Find Previous Authors, Ignore Commits List -Feb 09, 2024 2:55:29 AM reposense.parser.CsvParser validateHeader +Feb 09, 2024 8:57:47 AM reposense.parser.CsvParser validateHeader INFO: Parsed header of CSV file, author-config.csv, and recognized columns: Author's Emails, Repository's Location, Author's GitHub ID, Branch, Author's Display Name, Ignore Glob List, Author's Git Author Name -Feb 09, 2024 2:55:29 AM reposense.model.AuthorConfiguration checkDuplicateAliases +Feb 09, 2024 8:57:47 AM reposense.model.AuthorConfiguration checkDuplicateAliases WARNING: Duplicate alias v4vern found. The alias will belong to the last author - V4Vern -Feb 09, 2024 2:55:29 AM reposense.model.AuthorConfiguration checkDuplicateAliases +Feb 09, 2024 8:57:47 AM reposense.model.AuthorConfiguration checkDuplicateAliases WARNING: Duplicate alias zhengwinter found. The alias will belong to the last author - Zhengwinter -Feb 09, 2024 2:55:29 AM reposense.model.AuthorConfiguration checkDuplicateAliases +Feb 09, 2024 8:57:47 AM reposense.model.AuthorConfiguration checkDuplicateAliases WARNING: Duplicate alias ngxzs found. The alias will belong to the last author - NGXZS -Feb 09, 2024 2:55:29 AM reposense.model.AuthorConfiguration checkDuplicateAliases +Feb 09, 2024 8:57:48 AM reposense.model.AuthorConfiguration checkDuplicateAliases WARNING: Duplicate alias e0958902 found. The alias will belong to the last author - e0958902 -Feb 09, 2024 2:55:29 AM reposense.model.AuthorConfiguration checkDuplicateAliases +Feb 09, 2024 8:57:48 AM reposense.model.AuthorConfiguration checkDuplicateAliases WARNING: Duplicate alias edmundtangg found. The alias will belong to the last author - EdmundTangg -Feb 09, 2024 2:55:29 AM reposense.model.AuthorConfiguration checkDuplicateAliases +Feb 09, 2024 8:57:48 AM reposense.model.AuthorConfiguration checkDuplicateAliases WARNING: Duplicate alias v4vern found. The alias will belong to the last author - V4Vern -Feb 09, 2024 2:55:29 AM reposense.model.AuthorConfiguration checkDuplicateAliases +Feb 09, 2024 8:57:48 AM reposense.model.AuthorConfiguration checkDuplicateAliases WARNING: Duplicate alias zhengwinter found. The alias will belong to the last author - Zhengwinter -Feb 09, 2024 2:55:29 AM reposense.model.AuthorConfiguration checkDuplicateAliases +Feb 09, 2024 8:57:48 AM reposense.model.AuthorConfiguration checkDuplicateAliases WARNING: Duplicate alias ngxzs found. The alias will belong to the last author - NGXZS -Feb 09, 2024 2:55:29 AM reposense.model.AuthorConfiguration checkDuplicateAliases +Feb 09, 2024 8:57:48 AM reposense.model.AuthorConfiguration checkDuplicateAliases WARNING: Duplicate alias e0958902 found. The alias will belong to the last author - e0958902 -Feb 09, 2024 2:55:29 AM reposense.model.AuthorConfiguration checkDuplicateAliases +Feb 09, 2024 8:57:48 AM reposense.model.AuthorConfiguration checkDuplicateAliases WARNING: Duplicate alias edmundtangg found. The alias will belong to the last author - EdmundTangg -Feb 09, 2024 2:55:29 AM reposense.git.GitConfig getGlobalGitLfsConfig +Feb 09, 2024 8:57:48 AM reposense.git.GitConfig getGlobalGitLfsConfig WARNING: Could not get global git lfs config java.lang.RuntimeException: reposense.system.CommandRunnerProcessException: Error returned from command git config --global --list on path . : fatal: unable to read config file '/home/runner/.gitconfig': No such file or directory @@ -40,67 +40,47 @@ fatal: unable to read config file '/home/runner/.gitconfig': No such file or dir at reposense.system.CommandRunner.runCommand(CommandRunner.java:21) ... 3 more -Feb 09, 2024 2:55:29 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/Xb990219/ip.git... -Feb 09, 2024 2:55:29 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/rouvinerh/ip.git... +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/Elyovs/ip.git... -Feb 09, 2024 2:55:29 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/joshualeejunyi/ip.git... -Feb 09, 2024 2:55:29 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/rouvinerh/ip.git... -Feb 09, 2024 2:55:29 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/joshualeejunyi/ip.git to complete... -Feb 09, 2024 2:55:29 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/rouvinerh/ip.git to complete... +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/Xb990219/ip.git to complete... -Feb 09, 2024 2:55:29 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/Elyovs/ip.git to complete... -Feb 09, 2024 2:55:29 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/rouvinerh/ip.git to complete... -Feb 09, 2024 2:55:29 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/rouvinerh/ip.git completed! -Feb 09, 2024 2:55:29 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/Elyovs/ip.git completed! +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/ThawTunZan/ip.git... -Feb 09, 2024 2:55:29 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/joshualeejunyi/ip.git completed! -Feb 09, 2024 2:55:29 AM reposense.report.ReportGenerator analyzeRepos -INFO: [1/189] Analyzing https://github.com/rouvinerh/ip.git (master)... -Feb 09, 2024 2:55:29 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:48 AM reposense.report.ReportGenerator analyzeRepos +INFO: [1/189] Analyzing https://github.com/Elyovs/ip.git (master)... +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/ThawTunZan/ip.git to complete... -Feb 09, 2024 2:55:29 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/rouvinerh/ip.git completed! +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/SemiColonKen/ip.git... -Feb 09, 2024 2:55:29 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/Xb990219/ip.git completed! -Feb 09, 2024 2:55:29 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:48 AM reposense.report.ReportGenerator analyzeRepos +INFO: [2/189] Analyzing https://github.com/rouvinerh/ip.git (master)... +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/SemiColonKen/ip.git to complete... -Feb 09, 2024 2:55:29 AM reposense.report.ReportGenerator analyzeRepos -INFO: [2/189] Analyzing https://github.com/joshualeejunyi/ip.git (master)... -Feb 09, 2024 2:55:29 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:48 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/Elyovs/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:48 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/Elyovs/ip.git (master)... +Feb 09, 2024 8:57:48 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/rouvinerh/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:29 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/wallywallywally/ip.git... -Feb 09, 2024 2:55:29 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/Elyovs/ip.git completed! -Feb 09, 2024 2:55:29 AM reposense.report.ReportGenerator analyzeRepos -INFO: [3/189] Analyzing https://github.com/Xb990219/ip.git (master)... -Feb 09, 2024 2:55:29 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/wallywallywally/ip.git to complete... -Feb 09, 2024 2:55:29 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:48 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/rouvinerh/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/Xb990219/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/anneleong/ip.git... -Feb 09, 2024 2:55:30 AM reposense.report.ReportGenerator analyzeRepos -INFO: [4/189] Analyzing https://github.com/Elyovs/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/Xb990219/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/joshualeejunyi/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:30 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/joshualeejunyi/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/anneleong/ip.git to complete... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner waitForCloneProcess WARNING: Exception met while trying to clone the repo "SemiColonKen/ip[master]", will skip this repo. reposense.system.CommandRunnerProcessException: Error returned from command git clone --bare 'https://github.com/SemiColonKen/ip.git' 'repos/SemiColonKen_ip/ip_bare' on path . : Cloning into bare repository 'repos/SemiColonKen_ip/ip_bare'... @@ -116,1553 +96,1573 @@ fatal: could not read Username for 'https://github.com': No such device or addre at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/BenjoBurger/ip.git... -Feb 09, 2024 2:55:30 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/Elyovs/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:30 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/Elyovs/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/BenjoBurger/ip.git to complete... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/ThawTunZan/ip.git completed! -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/rismm/ip.git... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/wallywallywally/ip.git completed! -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/rismm/ip.git to complete... -Feb 09, 2024 2:55:30 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/rouvinerh/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/anneleong/ip.git completed! -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/isaaceng7/ip.git... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/cirelesna/ip.git... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/cirelesna/ip.git to complete... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/BenjoBurger/ip.git completed! -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/isaaceng7/ip.git to complete... -Feb 09, 2024 2:55:30 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/wallywallywally/ip.git... +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/wallywallywally/ip.git to complete... +Feb 09, 2024 8:57:48 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/Elyovs/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/Xb990219/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/iscyng/ip.git... -Feb 09, 2024 2:55:30 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:48 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/rouvinerh/ip.git (master)... +Feb 09, 2024 8:57:48 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/rouvinerh/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/iscyng/ip.git to complete... -Feb 09, 2024 2:55:30 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/joshualeejunyi/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/Xb990219/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:48 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/Elyovs/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/joshualeejunyi/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/joshualeejunyi/ip.git (master) completed! -Feb 09, 2024 2:55:30 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/Elyovs/ip.git (master) completed! -Feb 09, 2024 2:55:30 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/Xb990219/ip.git (master) completed! -Feb 09, 2024 2:55:30 AM reposense.report.ReportGenerator analyzeRepos -INFO: [5/189] Analyzing https://github.com/ThawTunZan/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.report.ReportGenerator analyzeRepos -INFO: [6/189] Analyzing https://github.com/wallywallywally/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.report.ReportGenerator analyzeRepos -INFO: [7/189] Analyzing https://github.com/anneleong/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:48 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/rouvinerh/ip.git (master) completed! -Feb 09, 2024 2:55:30 AM reposense.report.ReportGenerator analyzeRepos -INFO: [8/189] Analyzing https://github.com/BenjoBurger/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:48 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/Elyovs/ip.git (master) completed! +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/ThawTunZan/ip.git completed! +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/anneleong/ip.git... +Feb 09, 2024 8:57:48 AM reposense.report.ReportGenerator analyzeRepos +INFO: [3/189] Analyzing https://github.com/ThawTunZan/ip.git (master)... +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/anneleong/ip.git to complete... +Feb 09, 2024 8:57:48 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/ThawTunZan/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:48 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/ThawTunZan/ip.git (master)... +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/wallywallywally/ip.git completed! +Feb 09, 2024 8:57:48 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/ThawTunZan/ip.git (master)... +Feb 09, 2024 8:57:48 AM reposense.report.ReportGenerator analyzeRepos +INFO: [4/189] Analyzing https://github.com/wallywallywally/ip.git (master)... +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/BenjoBurger/ip.git... +Feb 09, 2024 8:57:48 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/ThawTunZan/ip.git (master)... +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/BenjoBurger/ip.git to complete... +Feb 09, 2024 8:57:48 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/ThawTunZan/ip.git (master) completed! +Feb 09, 2024 8:57:48 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/wallywallywally/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:30 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:48 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/wallywallywally/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/isaaceng7/ip.git completed! -Feb 09, 2024 2:55:30 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:48 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/wallywallywally/ip.git (master)... +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/anneleong/ip.git completed! +Feb 09, 2024 8:57:48 AM reposense.report.ReportGenerator analyzeRepos +INFO: [5/189] Analyzing https://github.com/anneleong/ip.git (master)... +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/rismm/ip.git... +Feb 09, 2024 8:57:48 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/wallywallywally/ip.git (master)... +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/rismm/ip.git to complete... +Feb 09, 2024 8:57:48 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/wallywallywally/ip.git (master) completed! +Feb 09, 2024 8:57:48 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/anneleong/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:30 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:48 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/anneleong/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/ThawTunZan/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:30 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/ThawTunZan/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/OKW32/ip.git... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/rismm/ip.git completed! -Feb 09, 2024 2:55:30 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/BenjoBurger/ip.git completed! +Feb 09, 2024 8:57:48 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/isaaceng7/ip.git... +Feb 09, 2024 8:57:48 AM reposense.report.ReportGenerator analyzeRepos +INFO: [6/189] Analyzing https://github.com/BenjoBurger/ip.git (master)... +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/isaaceng7/ip.git to complete... +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/BenjoBurger/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:30 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:49 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/BenjoBurger/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/cirelesna/ip.git completed! -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/OKW32/ip.git to complete... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/Zhengwinter/ip.git... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/clarencepohh/ip.git... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/iscyng/ip.git completed! -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/clarencepohh/ip.git to complete... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/Zhengwinter/ip.git to complete... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/alvinnnnnnnnnn/ip.git... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/alvinnnnnnnnnn/ip.git to complete... -Feb 09, 2024 2:55:30 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:49 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/anneleong/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/clarencepohh/ip.git completed! -Feb 09, 2024 2:55:30 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:49 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/anneleong/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/MonkeScripts/ip.git... -Feb 09, 2024 2:55:30 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/ThawTunZan/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/Zhengwinter/ip.git completed! -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/OKW32/ip.git completed! -Feb 09, 2024 2:55:30 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/anneleong/ip.git (master) completed! -Feb 09, 2024 2:55:30 AM reposense.report.ReportGenerator analyzeRepos -INFO: [9/189] Analyzing https://github.com/isaaceng7/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/wallywallywally/ip.git (master)... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/MonkeScripts/ip.git to complete... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/alvinnnnnnnnnn/ip.git completed! -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/shawnpong/ip.git... -Feb 09, 2024 2:55:30 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/itsmejr257/ip.git... -Feb 09, 2024 2:55:30 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/wallywallywally/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/isaaceng7/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:31 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/isaaceng7/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/rismm/ip.git completed! +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator analyzeRepos +INFO: [7/189] Analyzing https://github.com/rismm/ip.git (master)... +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/cirelesna/ip.git... +Feb 09, 2024 8:57:49 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/BenjoBurger/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/BryanCastorius/ip.git... -Feb 09, 2024 2:55:31 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/ThawTunZan/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/ThawTunZan/ip.git (master) completed! -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/itsmejr257/ip.git to complete... -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator analyzeRepos -INFO: [10/189] Analyzing https://github.com/rismm/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/shawnpong/ip.git to complete... -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/wallywallywally/ip.git (master) completed! -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/BryanCastorius/ip.git to complete... -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator analyzeRepos -INFO: [11/189] Analyzing https://github.com/cirelesna/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/cirelesna/ip.git to complete... +Feb 09, 2024 8:57:49 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/BenjoBurger/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/BenjoBurger/ip.git (master) completed! +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/rismm/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:31 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:49 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/rismm/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/BenjoBurger/ip.git (master) completed! -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator analyzeRepos -INFO: [12/189] Analyzing https://github.com/iscyng/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/isaaceng7/ip.git completed! +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator analyzeRepos +INFO: [8/189] Analyzing https://github.com/isaaceng7/ip.git (master)... +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/iscyng/ip.git... +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/iscyng/ip.git to complete... +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/isaaceng7/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:49 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/isaaceng7/ip.git (master)... +Feb 09, 2024 8:57:49 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/isaaceng7/ip.git (master)... +Feb 09, 2024 8:57:49 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/isaaceng7/ip.git (master)... +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/isaaceng7/ip.git (master) completed! +Feb 09, 2024 8:57:49 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/rismm/ip.git (master)... +Feb 09, 2024 8:57:49 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/rismm/ip.git (master)... +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/rismm/ip.git (master) completed! +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/cirelesna/ip.git completed! +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator analyzeRepos +INFO: [9/189] Analyzing https://github.com/cirelesna/ip.git (master)... +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/OKW32/ip.git... +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/OKW32/ip.git to complete... +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/cirelesna/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:31 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:49 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/cirelesna/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/iscyng/ip.git completed! +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/Zhengwinter/ip.git... +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator analyzeRepos +INFO: [10/189] Analyzing https://github.com/iscyng/ip.git (master)... +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/Zhengwinter/ip.git to complete... +Feb 09, 2024 8:57:49 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/cirelesna/ip.git (master)... +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/iscyng/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:31 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:49 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/iscyng/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/MonkeScripts/ip.git completed! -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/cyhjason29/ip.git... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/cyhjason29/ip.git to complete... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/itsmejr257/ip.git completed! -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/shawnpong/ip.git completed! -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/alalal47/ip.git... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/pqienso/ip.git... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/alalal47/ip.git to complete... -Feb 09, 2024 2:55:31 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/isaaceng7/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/pqienso/ip.git to complete... -Feb 09, 2024 2:55:31 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/isaaceng7/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/isaaceng7/ip.git (master) completed! -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator analyzeRepos -INFO: [13/189] Analyzing https://github.com/clarencepohh/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/BryanCastorius/ip.git completed! -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/blackmirag3/ip.git... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/blackmirag3/ip.git to complete... -Feb 09, 2024 2:55:31 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:49 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/cirelesna/ip.git (master)... +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/cirelesna/ip.git (master) completed! +Feb 09, 2024 8:57:49 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/iscyng/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/clarencepohh/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:31 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/clarencepohh/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:49 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/iscyng/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/iscyng/ip.git (master) completed! -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator analyzeRepos -INFO: [14/189] Analyzing https://github.com/Zhengwinter/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/cirelesna/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/rismm/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/cirelesna/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/cirelesna/ip.git (master) completed! -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator analyzeRepos -INFO: [15/189] Analyzing https://github.com/OKW32/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/Zhengwinter/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:31 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/Zhengwinter/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/rismm/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/rismm/ip.git (master) completed! -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator analyzeRepos -INFO: [16/189] Analyzing https://github.com/alvinnnnnnnnnn/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/cyhjason29/ip.git completed! -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/OKW32/ip.git completed! +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator analyzeRepos +INFO: [11/189] Analyzing https://github.com/OKW32/ip.git (master)... +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/clarencepohh/ip.git... +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/clarencepohh/ip.git to complete... +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/OKW32/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:31 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:49 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/OKW32/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/ttasnim5/ip.git... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/pqienso/ip.git completed! -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/alalal47/ip.git completed! -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/Zhengwinter/ip.git completed! +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator analyzeRepos +INFO: [12/189] Analyzing https://github.com/Zhengwinter/ip.git (master)... +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/alvinnnnnnnnnn/ip.git... +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/alvinnnnnnnnnn/ip.git to complete... +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/Zhengwinter/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:49 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/Zhengwinter/ip.git (master)... +Feb 09, 2024 8:57:49 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/OKW32/ip.git (master)... +Feb 09, 2024 8:57:49 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/OKW32/ip.git (master)... +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/OKW32/ip.git (master) completed! +Feb 09, 2024 8:57:49 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/Zhengwinter/ip.git (master)... +Feb 09, 2024 8:57:49 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/Zhengwinter/ip.git (master)... +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/Zhengwinter/ip.git (master) completed! +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/clarencepohh/ip.git completed! +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator analyzeRepos +INFO: [13/189] Analyzing https://github.com/clarencepohh/ip.git (master)... +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/MonkeScripts/ip.git... +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/MonkeScripts/ip.git to complete... +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/clarencepohh/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:49 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/clarencepohh/ip.git (master)... +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/alvinnnnnnnnnn/ip.git completed! +Feb 09, 2024 8:57:49 AM reposense.report.ReportGenerator analyzeRepos +INFO: [14/189] Analyzing https://github.com/alvinnnnnnnnnn/ip.git (master)... +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/shawnpong/ip.git... +Feb 09, 2024 8:57:49 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/shawnpong/ip.git to complete... +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/alvinnnnnnnnnn/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:31 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:50 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/alvinnnnnnnnnn/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/ttasnim5/ip.git to complete... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/Leong-ZM/ip.git... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/vimalapugazhan/ip.git... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/Leong-ZM/ip.git to complete... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/vimalapugazhan/ip.git to complete... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/blackmirag3/ip.git completed! -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/yeozhishen/ip.git... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/yeozhishen/ip.git to complete... -Feb 09, 2024 2:55:31 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/alvinnnnnnnnnn/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:50 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/clarencepohh/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:50 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/clarencepohh/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/clarencepohh/ip.git (master) completed! +Feb 09, 2024 8:57:50 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/alvinnnnnnnnnn/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/alvinnnnnnnnnn/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/alvinnnnnnnnnn/ip.git (master) completed! -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator analyzeRepos -INFO: [17/189] Analyzing https://github.com/MonkeScripts/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/Zhengwinter/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/clarencepohh/ip.git (master) completed! -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator analyzeRepos -INFO: [18/189] Analyzing https://github.com/shawnpong/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/OKW32/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/OKW32/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/shawnpong/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:31 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/shawnpong/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/Zhengwinter/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/Zhengwinter/ip.git (master) completed! -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/OKW32/ip.git (master) completed! -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/MonkeScripts/ip.git completed! +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator analyzeRepos +INFO: [15/189] Analyzing https://github.com/MonkeScripts/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/itsmejr257/ip.git... +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/itsmejr257/ip.git to complete... +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/MonkeScripts/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:31 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:50 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/MonkeScripts/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator analyzeRepos -INFO: [19/189] Analyzing https://github.com/itsmejr257/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/ttasnim5/ip.git completed! -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator analyzeRepos -INFO: [20/189] Analyzing https://github.com/BryanCastorius/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/aaravrawal52/ip.git... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/Leong-ZM/ip.git completed! -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/itsmejr257/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:31 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/itsmejr257/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/yuhengr/ip.git... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/aaravrawal52/ip.git to complete... -Feb 09, 2024 2:55:31 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/BryanCastorius/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:31 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/BryanCastorius/ip.git (master)... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/vimalapugazhan/ip.git completed! -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/yuhengr/ip.git to complete... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/daryltay415/ip.git... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/yeozhishen/ip.git completed! -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/daryltay415/ip.git to complete... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/ZhouJunmin/ip.git... -Feb 09, 2024 2:55:31 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/ZhouJunmin/ip.git to complete... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/shawnpong/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/shawnpong/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:50 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/MonkeScripts/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/shawnpong/ip.git (master) completed! -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepos -INFO: [21/189] Analyzing https://github.com/cyhjason29/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/shawnpong/ip.git completed! +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator analyzeRepos +INFO: [16/189] Analyzing https://github.com/shawnpong/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/BryanCastorius/ip.git... +Feb 09, 2024 8:57:50 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/MonkeScripts/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/BryanCastorius/ip.git to complete... +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/MonkeScripts/ip.git (master) completed! -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/shawnpong/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:50 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/shawnpong/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/shawnpong/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/shawnpong/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/shawnpong/ip.git (master) completed! +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/itsmejr257/ip.git completed! +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator analyzeRepos +INFO: [17/189] Analyzing https://github.com/itsmejr257/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/cyhjason29/ip.git... +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/cyhjason29/ip.git to complete... +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/itsmejr257/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:50 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/itsmejr257/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/itsmejr257/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/BryanCastorius/ip.git completed! +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator analyzeRepos +INFO: [18/189] Analyzing https://github.com/BryanCastorius/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/alalal47/ip.git... +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/alalal47/ip.git to complete... +Feb 09, 2024 8:57:50 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/itsmejr257/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/itsmejr257/ip.git (master) completed! +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/BryanCastorius/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:50 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/BryanCastorius/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/BryanCastorius/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepos -INFO: [22/189] Analyzing https://github.com/pqienso/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:50 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/BryanCastorius/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/BryanCastorius/ip.git (master) completed! -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/cyhjason29/ip.git completed! +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator analyzeRepos +INFO: [19/189] Analyzing https://github.com/cyhjason29/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/pqienso/ip.git... +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/pqienso/ip.git to complete... +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/cyhjason29/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:32 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:50 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/cyhjason29/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepos -INFO: [23/189] Analyzing https://github.com/alalal47/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/itsmejr257/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/itsmejr257/ip.git (master) completed! -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepos -INFO: [24/189] Analyzing https://github.com/blackmirag3/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/pqienso/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:32 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/pqienso/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:50 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/cyhjason29/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/cyhjason29/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/cyhjason29/ip.git (master) completed! +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/alalal47/ip.git completed! +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator analyzeRepos +INFO: [20/189] Analyzing https://github.com/alalal47/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/blackmirag3/ip.git... +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/blackmirag3/ip.git to complete... +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/alalal47/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:32 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:50 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/alalal47/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/blackmirag3/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:32 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/blackmirag3/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/aaravrawal52/ip.git completed! -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/soongensayo/ip.git... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/soongensayo/ip.git to complete... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/daryltay415/ip.git completed! -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/yuhengr/ip.git completed! -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/ZhouJunmin/ip.git completed! -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/vibes-863/ip.git... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/vibes-863/ip.git to complete... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/nicknamenic/ip.git... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/yyangdaa/ip.git... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/nicknamenic/ip.git to complete... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/yyangdaa/ip.git to complete... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/blackmirag3/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:50 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/alalal47/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/pqienso/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/blackmirag3/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/blackmirag3/ip.git (master) completed! -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepos -INFO: [25/189] Analyzing https://github.com/ttasnim5/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:50 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/alalal47/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/cyhjason29/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/alalal47/ip.git (master) completed! -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepos -INFO: [26/189] Analyzing https://github.com/Leong-ZM/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/pqienso/ip.git completed! +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator analyzeRepos +INFO: [21/189] Analyzing https://github.com/pqienso/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/ttasnim5/ip.git... +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/ttasnim5/ip.git to complete... +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/pqienso/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:50 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/pqienso/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/pqienso/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/pqienso/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/pqienso/ip.git (master) completed! -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/cyhjason29/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepos -INFO: [27/189] Analyzing https://github.com/vimalapugazhan/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/cyhjason29/ip.git (master) completed! -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepos -INFO: [28/189] Analyzing https://github.com/yeozhishen/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/blackmirag3/ip.git completed! +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator analyzeRepos +INFO: [22/189] Analyzing https://github.com/blackmirag3/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/Leong-ZM/ip.git... +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/Leong-ZM/ip.git to complete... +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/blackmirag3/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:50 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/blackmirag3/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/blackmirag3/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/blackmirag3/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/ttasnim5/ip.git completed! +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/blackmirag3/ip.git (master) completed! +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/vimalapugazhan/ip.git... +Feb 09, 2024 8:57:50 AM reposense.report.ReportGenerator analyzeRepos +INFO: [23/189] Analyzing https://github.com/ttasnim5/ip.git (master)... +Feb 09, 2024 8:57:50 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/vimalapugazhan/ip.git to complete... +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/ttasnim5/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:32 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:51 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/ttasnim5/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/yeozhishen/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:32 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/yeozhishen/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:51 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/ttasnim5/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/ttasnim5/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/ttasnim5/ip.git (master) completed! +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/Xb990219/ip.git completed! +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/Leong-ZM/ip.git completed! +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator analyzeRepos +INFO: [24/189] Analyzing https://github.com/Xb990219/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/yeozhishen/ip.git... +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator analyzeRepos +INFO: [25/189] Analyzing https://github.com/Leong-ZM/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/aaravrawal52/ip.git... +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/yeozhishen/ip.git to complete... +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/aaravrawal52/ip.git to complete... +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/Xb990219/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:51 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/Xb990219/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/joshualeejunyi/ip.git completed! +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/yuhengr/ip.git... +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator analyzeRepos +INFO: [26/189] Analyzing https://github.com/joshualeejunyi/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/yuhengr/ip.git to complete... +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/Leong-ZM/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:32 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:51 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/Leong-ZM/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/joshualeejunyi/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:51 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/joshualeejunyi/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/vimalapugazhan/ip.git completed! +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/daryltay415/ip.git... +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator analyzeRepos +INFO: [27/189] Analyzing https://github.com/vimalapugazhan/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/daryltay415/ip.git to complete... +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/vimalapugazhan/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:32 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:51 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/Xb990219/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/vimalapugazhan/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/soongensayo/ip.git completed! -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/tiffanyliu0220/ip.git... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/nicknamenic/ip.git completed! -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/vibes-863/ip.git completed! -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/tiffanyliu0220/ip.git to complete... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/HengShuHong/ip.git... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/yyangdaa/ip.git completed! -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/ChenKangg/ip.git... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/luozihui2003/ip.git... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/ChenKangg/ip.git to complete... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/HengShuHong/ip.git to complete... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/luozihui2003/ip.git to complete... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:51 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/Xb990219/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/Xb990219/ip.git (master) completed! +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/yeozhishen/ip.git completed! +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/aaravrawal52/ip.git completed! +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/ZhouJunmin/ip.git... +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator analyzeRepos +INFO: [28/189] Analyzing https://github.com/yeozhishen/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/Leong-ZM/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/vimalapugazhan/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/ttasnim5/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/soongensayo/ip.git... +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/ZhouJunmin/ip.git to complete... +Feb 09, 2024 8:57:51 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/Leong-ZM/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/yeozhishen/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:51 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/yeozhishen/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/Leong-ZM/ip.git (master) completed! -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/yuhengr/ip.git completed! +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/soongensayo/ip.git to complete... +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator analyzeRepos INFO: [29/189] Analyzing https://github.com/aaravrawal52/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/ttasnim5/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/vibes-863/ip.git... +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/daryltay415/ip.git completed! +Feb 09, 2024 8:57:51 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/vimalapugazhan/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/vibes-863/ip.git to complete... +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/nicknamenic/ip.git... +Feb 09, 2024 8:57:51 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/vimalapugazhan/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/ttasnim5/ip.git (master) completed! -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/vimalapugazhan/ip.git (master) completed! -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepos -INFO: [30/189] Analyzing https://github.com/daryltay415/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepos -INFO: [31/189] Analyzing https://github.com/yuhengr/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:51 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/joshualeejunyi/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/aaravrawal52/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:32 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:51 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/aaravrawal52/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/daryltay415/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:32 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/daryltay415/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/tiffanyliu0220/ip.git completed! -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/vimalapugazhan/ip.git (master) completed! +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator analyzeRepos +INFO: [30/189] Analyzing https://github.com/yuhengr/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/nicknamenic/ip.git to complete... +Feb 09, 2024 8:57:51 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/joshualeejunyi/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/joshualeejunyi/ip.git (master) completed! +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/yuhengr/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:32 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:51 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/yuhengr/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/luozihui2003/ip.git completed! -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/ParthGandhiNUS/ip.git... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/imanamirshah/ip.git... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/HengShuHong/ip.git completed! -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/Ijaaz01/ip.git... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/imanamirshah/ip.git to complete... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/ChenKangg/ip.git completed! -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/ParthGandhiNUS/ip.git to complete... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/Ijaaz01/ip.git to complete... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/wjunjie01/ip.git... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/yeozhishen/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/wjunjie01/ip.git to complete... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/yeozhishen/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/yeozhishen/ip.git (master) completed! -Feb 09, 2024 2:55:32 AM reposense.report.ReportGenerator analyzeRepos -INFO: [32/189] Analyzing https://github.com/ZhouJunmin/ip.git (master)... -Feb 09, 2024 2:55:32 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator analyzeRepos +INFO: [31/189] Analyzing https://github.com/daryltay415/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/daryltay415/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:51 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/daryltay415/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/ZhouJunmin/ip.git completed! +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/soongensayo/ip.git completed! +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/yyangdaa/ip.git... +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/tiffanyliu0220/ip.git... +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/yyangdaa/ip.git to complete... +Feb 09, 2024 8:57:51 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/yuhengr/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/vibes-863/ip.git completed! +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/tiffanyliu0220/ip.git to complete... +Feb 09, 2024 8:57:51 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/yuhengr/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/yuhengr/ip.git (master) completed! -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/HengShuHong/ip.git... +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator analyzeRepos +INFO: [32/189] Analyzing https://github.com/ZhouJunmin/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/HengShuHong/ip.git to complete... +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/nicknamenic/ip.git completed! +Feb 09, 2024 8:57:51 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/aaravrawal52/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/ChenKangg/ip.git... +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/ZhouJunmin/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:33 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:51 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/ZhouJunmin/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepos -INFO: [33/189] Analyzing https://github.com/soongensayo/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/aaravrawal52/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:51 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/yeozhishen/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/ChenKangg/ip.git to complete... +Feb 09, 2024 8:57:51 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/daryltay415/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/aaravrawal52/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/aaravrawal52/ip.git (master) completed! -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/soongensayo/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:33 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/soongensayo/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/daryltay415/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepos -INFO: [34/189] Analyzing https://github.com/vibes-863/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator analyzeRepos +INFO: [33/189] Analyzing https://github.com/soongensayo/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/yeozhishen/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/yeozhishen/ip.git (master) completed! +Feb 09, 2024 8:57:51 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/daryltay415/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/daryltay415/ip.git (master) completed! -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator analyzeRepos +INFO: [34/189] Analyzing https://github.com/vibes-863/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator analyzeRepos INFO: [35/189] Analyzing https://github.com/nicknamenic/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/vibes-863/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:33 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/vibes-863/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/soongensayo/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:51 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/soongensayo/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/nicknamenic/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:33 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:51 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/nicknamenic/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/ZhouJunmin/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/ZhouJunmin/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/ZhouJunmin/ip.git (master) completed! -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepos -INFO: [36/189] Analyzing https://github.com/yyangdaa/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/yyangdaa/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:33 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/yyangdaa/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/soongensayo/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:51 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/vibes-863/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:51 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/vibes-863/ip.git (master)... +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/yyangdaa/ip.git completed! +Feb 09, 2024 8:57:51 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/tiffanyliu0220/ip.git completed! +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/luozihui2003/ip.git... +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/ParthGandhiNUS/ip.git... +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/luozihui2003/ip.git to complete... +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/ParthGandhiNUS/ip.git to complete... +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/HengShuHong/ip.git completed! +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/imanamirshah/ip.git... +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/imanamirshah/ip.git to complete... +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/nicknamenic/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/Ijaaz01/ip.git completed! -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/imanamirshah/ip.git completed! -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/soongensayo/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/soongensayo/ip.git (master) completed! -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/wjunjie01/ip.git completed! -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/tayponghee/ip.git... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/leongxingyu/ip.git... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/nicknamenic/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepos -INFO: [37/189] Analyzing https://github.com/tiffanyliu0220/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/nicknamenic/ip.git (master) completed! -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/ParthGandhiNUS/ip.git completed! -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/NicholasTanYY/ip.git... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepos -INFO: [38/189] Analyzing https://github.com/luozihui2003/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/tayponghee/ip.git to complete... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/NicholasTanYY/ip.git to complete... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/leongxingyu/ip.git to complete... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/ymirmeddeb/ip.git... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/luozihui2003/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:33 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/luozihui2003/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/ymirmeddeb/ip.git to complete... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepos +INFO: [36/189] Analyzing https://github.com/tiffanyliu0220/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/soongensayo/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/ChenKangg/ip.git completed! +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/Ijaaz01/ip.git... +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/ZhouJunmin/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/Ijaaz01/ip.git to complete... +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/vibes-863/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/tiffanyliu0220/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:33 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:52 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/tiffanyliu0220/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/soongensayo/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/soongensayo/ip.git (master) completed! +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepos +INFO: [37/189] Analyzing https://github.com/yyangdaa/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/vibes-863/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/vibes-863/ip.git (master) completed! -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepos -INFO: [39/189] Analyzing https://github.com/HengShuHong/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/yyangdaa/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepos +INFO: [38/189] Analyzing https://github.com/HengShuHong/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/ZhouJunmin/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/ZhouJunmin/ip.git (master) completed! +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepos +INFO: [39/189] Analyzing https://github.com/ChenKangg/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/luozihui2003/ip.git completed! +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/ParthGandhiNUS/ip.git completed! +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/ChenKangg/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:52 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/ChenKangg/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/HengShuHong/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:33 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:52 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/HengShuHong/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/yyangdaa/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/luozihui2003/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/yyangdaa/ip.git (master) completed! -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepos -INFO: [40/189] Analyzing https://github.com/ChenKangg/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/wjunjie01/ip.git... +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/yyangdaa/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:52 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/yyangdaa/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/wjunjie01/ip.git to complete... +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/tayponghee/ip.git... +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/tiffanyliu0220/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/tayponghee/ip.git to complete... +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/imanamirshah/ip.git completed! +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/tiffanyliu0220/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/tiffanyliu0220/ip.git (master) completed! -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/ChenKangg/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:33 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/ChenKangg/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/luozihui2003/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepos -INFO: [41/189] Analyzing https://github.com/Ijaaz01/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/luozihui2003/ip.git (master) completed! -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepos -INFO: [42/189] Analyzing https://github.com/imanamirshah/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepos +INFO: [40/189] Analyzing https://github.com/luozihui2003/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/leongxingyu/ip.git... +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/leongxingyu/ip.git to complete... +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/luozihui2003/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:52 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/luozihui2003/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/yyangdaa/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/HengShuHong/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/Ijaaz01/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:33 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/Ijaaz01/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/ChenKangg/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/yyangdaa/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/yyangdaa/ip.git (master) completed! +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepos +INFO: [41/189] Analyzing https://github.com/ParthGandhiNUS/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/ChenKangg/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/ChenKangg/ip.git (master) completed! +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepos +INFO: [42/189] Analyzing https://github.com/imanamirshah/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/HengShuHong/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/HengShuHong/ip.git (master) completed! -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/luozihui2003/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/ParthGandhiNUS/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:52 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/ParthGandhiNUS/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/luozihui2003/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/imanamirshah/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:33 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:52 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/imanamirshah/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepos -INFO: [43/189] Analyzing https://github.com/wjunjie01/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/leongxingyu/ip.git completed! -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/luozihui2003/ip.git (master) completed! +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/Ijaaz01/ip.git completed! +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/NicholasTanYY/ip.git... +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepos +INFO: [43/189] Analyzing https://github.com/Ijaaz01/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/NicholasTanYY/ip.git to complete... +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/wjunjie01/ip.git completed! +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/tayponghee/ip.git completed! -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/Ijaaz01/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:52 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/Ijaaz01/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/leongxingyu/ip.git completed! +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/ymirmeddeb/ip.git... +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepos +INFO: [44/189] Analyzing https://github.com/tayponghee/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/songyuew/ip.git... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/songyuew/ip.git to complete... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/e0958902/ip.git... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/NicholasTanYY/ip.git completed! -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/e0958902/ip.git to complete... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/HiteshriAcharya/ip.git... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/wjunjie01/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:33 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/wjunjie01/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/HiteshriAcharya/ip.git to complete... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/ymirmeddeb/ip.git completed! -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/djleong01/ip.git... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/ChenKangg/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/djleong01/ip.git to complete... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/Ijaaz01/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/ChenKangg/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/ChenKangg/ip.git (master) completed! -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepos -INFO: [44/189] Analyzing https://github.com/ParthGandhiNUS/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/Ijaaz01/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/Ijaaz01/ip.git (master) completed! -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepos -INFO: [45/189] Analyzing https://github.com/tayponghee/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/ParthGandhiNUS/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:33 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/ParthGandhiNUS/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/songyuew/ip.git to complete... +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/ymirmeddeb/ip.git to complete... +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/tayponghee/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:33 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:52 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/tayponghee/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/imanamirshah/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/ParthGandhiNUS/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/ParthGandhiNUS/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/ParthGandhiNUS/ip.git (master) completed! +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepos +INFO: [45/189] Analyzing https://github.com/wjunjie01/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/imanamirshah/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/Ijaaz01/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/Ijaaz01/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/Ijaaz01/ip.git (master) completed! +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/wjunjie01/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:52 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/wjunjie01/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepos +INFO: [46/189] Analyzing https://github.com/leongxingyu/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/imanamirshah/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/imanamirshah/ip.git (master) completed! -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepos -INFO: [46/189] Analyzing https://github.com/leongxingyu/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/e0958902/ip.git completed! -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/songyuew/ip.git completed! -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/Jamarcus111/ip.git... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/wjunjie01/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/Cryolian/ip.git... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/NicholasTanYY/ip.git completed! +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/HiteshriAcharya/ip.git... +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepos +INFO: [47/189] Analyzing https://github.com/NicholasTanYY/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/tayponghee/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/leongxingyu/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:33 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:52 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/leongxingyu/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/ParthGandhiNUS/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/ParthGandhiNUS/ip.git (master) completed! -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepos -INFO: [47/189] Analyzing https://github.com/NicholasTanYY/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/djleong01/ip.git completed! -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/Jamarcus111/ip.git to complete... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/Cryolian/ip.git to complete... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/ChongXern/ip.git... -Feb 09, 2024 2:55:33 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/wjunjie01/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/wjunjie01/ip.git (master) completed! -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/HiteshriAcharya/ip.git completed! -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator analyzeRepos -INFO: [48/189] Analyzing https://github.com/ymirmeddeb/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/ChongXern/ip.git to complete... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/sxfoo/ip.git... -Feb 09, 2024 2:55:33 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/HiteshriAcharya/ip.git to complete... +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/NicholasTanYY/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:33 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:52 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/NicholasTanYY/ip.git (master)... -Feb 09, 2024 2:55:33 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/sxfoo/ip.git to complete... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/tayponghee/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/ymirmeddeb/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:34 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/ymirmeddeb/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:52 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/tayponghee/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/tayponghee/ip.git (master) completed! -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepos -INFO: [49/189] Analyzing https://github.com/songyuew/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/songyuew/ip.git completed! +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/e0958902/ip.git completed! +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/djleong01/ip.git... +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator analyzeRepos +INFO: [48/189] Analyzing https://github.com/songyuew/ip.git (master)... +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/Jamarcus111/ip.git... +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/ymirmeddeb/ip.git completed! +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/djleong01/ip.git to complete... +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/Cryolian/ip.git... +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/Jamarcus111/ip.git to complete... +Feb 09, 2024 8:57:52 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/songyuew/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:34 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:52 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/songyuew/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/ymirmeddeb/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/ymirmeddeb/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/ymirmeddeb/ip.git (master) completed! -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepos -INFO: [50/189] Analyzing https://github.com/e0958902/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/NicholasTanYY/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:52 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/Cryolian/ip.git to complete... +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/songyuew/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/leongxingyu/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/wjunjie01/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/NicholasTanYY/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/songyuew/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/songyuew/ip.git (master) completed! +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/leongxingyu/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepos +INFO: [49/189] Analyzing https://github.com/e0958902/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/leongxingyu/ip.git (master) completed! +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/wjunjie01/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepos +INFO: [50/189] Analyzing https://github.com/ymirmeddeb/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/wjunjie01/ip.git (master) completed! +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/NicholasTanYY/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/NicholasTanYY/ip.git (master) completed! -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepos -INFO: [51/189] Analyzing https://github.com/djleong01/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/ymirmeddeb/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:53 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/ymirmeddeb/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/e0958902/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:34 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:53 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/e0958902/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/leongxingyu/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/leongxingyu/ip.git (master) completed! -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepos -INFO: [52/189] Analyzing https://github.com/HiteshriAcharya/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/songyuew/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/djleong01/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/Jamarcus111/ip.git completed! -Feb 09, 2024 2:55:34 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/djleong01/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/songyuew/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/Cryolian/ip.git completed! -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/j013n3/ip.git... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/songyuew/ip.git (master) completed! -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/HiteshriAcharya/ip.git completed! +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/ChongXern/ip.git... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepos +INFO: [51/189] Analyzing https://github.com/HiteshriAcharya/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/ChongXern/ip.git to complete... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/HiteshriAcharya/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepos -INFO: [53/189] Analyzing https://github.com/Jamarcus111/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:53 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/HiteshriAcharya/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/sxfoo/ip.git completed! -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/ChongXern/ip.git completed! -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/j013n3/ip.git to complete... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/djleong01/ip.git completed! +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepos +INFO: [52/189] Analyzing https://github.com/djleong01/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/sxfoo/ip.git... +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/Cryolian/ip.git completed! +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/Jamarcus111/ip.git completed! +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/sxfoo/ip.git to complete... +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/j013n3/ip.git... +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/tannerlie/ip.git... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/runxinghuan/ip.git... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/runxinghuan/ip.git to complete... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/djleong01/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:53 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/djleong01/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/j013n3/ip.git to complete... +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/ymirmeddeb/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/tannerlie/ip.git to complete... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/edwardhumi/ip.git... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/ymirmeddeb/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/ymirmeddeb/ip.git (master) completed! +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepos +INFO: [53/189] Analyzing https://github.com/Jamarcus111/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/Jamarcus111/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:34 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:53 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/Jamarcus111/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/edwardhumi/ip.git to complete... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/e0958902/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/e0958902/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/e0958902/ip.git (master) completed! -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepos -INFO: [54/189] Analyzing https://github.com/Cryolian/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/HiteshriAcharya/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/Jamarcus111/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/djleong01/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/Cryolian/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:34 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/Cryolian/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/HiteshriAcharya/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/HiteshriAcharya/ip.git (master) completed! -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepos -INFO: [55/189] Analyzing https://github.com/ChongXern/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepos +INFO: [54/189] Analyzing https://github.com/Cryolian/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/Cryolian/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:53 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/Cryolian/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/ChongXern/ip.git completed! +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/djleong01/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/Jamarcus111/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/djleong01/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/djleong01/ip.git (master) completed! -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/j013n3/ip.git completed! +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/sxfoo/ip.git completed! +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepos +INFO: [55/189] Analyzing https://github.com/ChongXern/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/runxinghuan/ip.git... +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/edwardhumi/ip.git... +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/runxinghuan/ip.git to complete... +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/Jamarcus111/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepos -INFO: [56/189] Analyzing https://github.com/sxfoo/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/Jamarcus111/ip.git (master) completed! -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/j013n3/ip.git completed! -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/annnniexu/ip.git... +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/edwardhumi/ip.git to complete... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepos +INFO: [56/189] Analyzing https://github.com/j013n3/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/ChongXern/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:34 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:53 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/ChongXern/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepos -INFO: [57/189] Analyzing https://github.com/j013n3/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/annnniexu/ip.git... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/sxfoo/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:34 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/sxfoo/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/tannerlie/ip.git completed! -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/annnniexu/ip.git to complete... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/runxinghuan/ip.git completed! -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/awesomesjh/ip.git... +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/e0958902/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/j013n3/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:34 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:53 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/j013n3/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/awesomesjh/ip.git... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/edwardhumi/ip.git completed! -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/jasonlienardi/ip.git... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/genexus85/ip.git... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/awesomesjh/ip.git to complete... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/genexus85/ip.git to complete... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/jasonlienardi/ip.git to complete... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/e0958902/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/e0958902/ip.git (master) completed! +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepos +INFO: [57/189] Analyzing https://github.com/sxfoo/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/sxfoo/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:53 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/sxfoo/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/Cryolian/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/ChongXern/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/j013n3/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/Cryolian/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/sxfoo/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/Cryolian/ip.git (master) completed! -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepos INFO: [58/189] Analyzing https://github.com/tannerlie/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/ChongXern/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/sxfoo/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/sxfoo/ip.git (master) completed! -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/j013n3/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/j013n3/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/j013n3/ip.git (master) completed! +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/ChongXern/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepos -INFO: [59/189] Analyzing https://github.com/runxinghuan/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/ChongXern/ip.git (master) completed! -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepos -INFO: [60/189] Analyzing https://github.com/edwardhumi/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/tannerlie/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:34 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:53 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/tannerlie/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/j013n3/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/j013n3/ip.git (master) completed! -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/edwardhumi/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:34 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/edwardhumi/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/runxinghuan/ip.git completed! +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/edwardhumi/ip.git completed! +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/jasonlienardi/ip.git... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepos +INFO: [59/189] Analyzing https://github.com/edwardhumi/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepos +INFO: [60/189] Analyzing https://github.com/runxinghuan/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/genexus85/ip.git... +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/annnniexu/ip.git completed! -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/awesomesjh/ip.git completed! +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/genexus85/ip.git to complete... +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/jasonlienardi/ip.git to complete... +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/sxfoo/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/L5-Z/ip.git... +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/LWachtel1/ip.git... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/runxinghuan/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:34 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:53 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/runxinghuan/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/L5-Z/ip.git... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepos -INFO: [61/189] Analyzing https://github.com/annnniexu/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/awesomesjh/ip.git completed! -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/L5-Z/ip.git to complete... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/LWachtel1/ip.git... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/annnniexu/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:34 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/annnniexu/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/genexus85/ip.git completed! -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/LWachtel1/ip.git to complete... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/jasonlienardi/ip.git completed! -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/PDHung1104/ip.git... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/Geinzit/ip.git... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/edwardhumi/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:53 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/edwardhumi/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/tannerlie/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/PDHung1104/ip.git to complete... -Feb 09, 2024 2:55:34 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/Geinzit/ip.git to complete... -Feb 09, 2024 2:55:34 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:53 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/LWachtel1/ip.git to complete... +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/sxfoo/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/sxfoo/ip.git (master) completed! +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepos +INFO: [61/189] Analyzing https://github.com/awesomesjh/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/tannerlie/ip.git (master)... -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/tannerlie/ip.git (master) completed! -Feb 09, 2024 2:55:34 AM reposense.report.ReportGenerator analyzeRepos -INFO: [62/189] Analyzing https://github.com/awesomesjh/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator analyzeRepos +INFO: [62/189] Analyzing https://github.com/annnniexu/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/annnniexu/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:53 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/annnniexu/ip.git (master)... +Feb 09, 2024 8:57:53 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/awesomesjh/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:35 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:53 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/awesomesjh/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/runxinghuan/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/runxinghuan/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/runxinghuan/ip.git (master) completed! -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepos -INFO: [63/189] Analyzing https://github.com/genexus85/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/annnniexu/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/genexus85/ip.git completed! +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/edwardhumi/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/PDHung1104/ip.git... +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/PDHung1104/ip.git to complete... +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/runxinghuan/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/edwardhumi/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/edwardhumi/ip.git (master) completed! -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/L5-Z/ip.git completed! -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepos +INFO: [63/189] Analyzing https://github.com/genexus85/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/jasonlienardi/ip.git completed! +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/runxinghuan/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/Geinzit/ip.git... +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/runxinghuan/ip.git (master) completed! +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepos INFO: [64/189] Analyzing https://github.com/jasonlienardi/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/Geinzit/ip.git to complete... +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/annnniexu/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/genexus85/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:35 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:54 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/genexus85/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/annnniexu/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/LWachtel1/ip.git completed! +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/cheeseong2001/ip.git... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/annnniexu/ip.git (master) completed! -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepos -INFO: [65/189] Analyzing https://github.com/L5-Z/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/cheeseong2001/ip.git to complete... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/jasonlienardi/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:35 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:54 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/jasonlienardi/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/LWachtel1/ip.git completed! -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/owx0130/ip.git... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/L5-Z/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:35 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/L5-Z/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/owx0130/ip.git to complete... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/PDHung1104/ip.git completed! -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/Geinzit/ip.git completed! -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/jing-xiang/ip.git... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/raajamani/ip.git... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/jing-xiang/ip.git to complete... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/raajamani/ip.git to complete... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/cheeseong2001/ip.git to complete... +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/annnniexu/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/annnniexu/ip.git (master) completed! +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepos +INFO: [65/189] Analyzing https://github.com/LWachtel1/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/awesomesjh/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/awesomesjh/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/awesomesjh/ip.git (master) completed! -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepos -INFO: [66/189] Analyzing https://github.com/LWachtel1/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/genexus85/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/LWachtel1/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:35 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:54 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/LWachtel1/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/LWachtel1/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/genexus85/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/LWachtel1/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/LWachtel1/ip.git (master) completed! +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/jasonlienardi/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/genexus85/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/genexus85/ip.git (master) completed! -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/L5-Z/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/jasonlienardi/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/jasonlienardi/ip.git (master) completed! +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/PDHung1104/ip.git completed! +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/L5-Z/ip.git completed! +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/owx0130/ip.git... +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepos +INFO: [66/189] Analyzing https://github.com/L5-Z/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepos INFO: [67/189] Analyzing https://github.com/PDHung1104/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/L5-Z/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/L5-Z/ip.git (master) completed! -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/jasonlienardi/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/jing-xiang/ip.git... +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/owx0130/ip.git to complete... +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/jing-xiang/ip.git to complete... +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/Geinzit/ip.git completed! +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/L5-Z/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:54 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/L5-Z/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/raajamani/ip.git... +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepos INFO: [68/189] Analyzing https://github.com/Geinzit/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/raajamani/ip.git to complete... +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/PDHung1104/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:35 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:54 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/PDHung1104/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/LWachtel1/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/jasonlienardi/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/LWachtel1/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/LWachtel1/ip.git (master) completed! -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/jasonlienardi/ip.git (master) completed! -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/cheeseong2001/ip.git completed! -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/webtjs/ip.git... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepos -INFO: [69/189] Analyzing https://github.com/cheeseong2001/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/Geinzit/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:35 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:54 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/Geinzit/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepos +INFO: [69/189] Analyzing https://github.com/cheeseong2001/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/webtjs/ip.git... +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/webtjs/ip.git to complete... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/cheeseong2001/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:35 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:54 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/cheeseong2001/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/L5-Z/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/L5-Z/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/L5-Z/ip.git (master) completed! +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/PDHung1104/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/Geinzit/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/cheeseong2001/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/PDHung1104/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/PDHung1104/ip.git (master) completed! +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/Geinzit/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/owx0130/ip.git completed! -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/jensonjenkins/ip.git... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/Geinzit/ip.git (master) completed! +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/cheeseong2001/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/cheeseong2001/ip.git (master) completed! +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepos INFO: [70/189] Analyzing https://github.com/owx0130/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/jing-xiang/ip.git completed! -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/PDHung1104/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/jensonjenkins/ip.git... +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/jensonjenkins/ip.git to complete... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/LowTL/ip.git... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/LowTL/ip.git to complete... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/owx0130/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:35 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:54 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/owx0130/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/PDHung1104/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/PDHung1104/ip.git (master) completed! -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/raajamani/ip.git completed! -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/jing-xiang/ip.git completed! +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepos INFO: [71/189] Analyzing https://github.com/jing-xiang/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/Geinzit/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/TimothyLKM/ip.git... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/TimothyLKM/ip.git to complete... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/cheeseong2001/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/Geinzit/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/Geinzit/ip.git (master) completed! -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/LowTL/ip.git... +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/raajamani/ip.git completed! +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/LowTL/ip.git to complete... +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/TimothyLKM/ip.git... +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepos +INFO: [72/189] Analyzing https://github.com/raajamani/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/jing-xiang/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:35 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:54 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/jing-xiang/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepos -INFO: [72/189] Analyzing https://github.com/raajamani/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/cheeseong2001/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/TimothyLKM/ip.git to complete... +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/raajamani/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:35 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:54 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/raajamani/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/cheeseong2001/ip.git (master) completed! -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/owx0130/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/owx0130/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/webtjs/ip.git completed! -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/owx0130/ip.git (master) completed! -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/raajamani/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepos INFO: [73/189] Analyzing https://github.com/webtjs/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/FeathersRe/ip.git... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/FeathersRe/ip.git to complete... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/jing-xiang/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/raajamani/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/raajamani/ip.git (master) completed! -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/webtjs/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:35 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:54 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/webtjs/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/owx0130/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/owx0130/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/raajamani/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/owx0130/ip.git (master) completed! +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/raajamani/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/jing-xiang/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/raajamani/ip.git (master) completed! +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/jing-xiang/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/jing-xiang/ip.git (master) completed! -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/jensonjenkins/ip.git completed! -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/LowTL/ip.git completed! -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepos -INFO: [74/189] Analyzing https://github.com/jensonjenkins/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/webtjs/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/liuy1103/ip.git... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/Cohii2/ip.git... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepos -INFO: [75/189] Analyzing https://github.com/LowTL/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepos +INFO: [74/189] Analyzing https://github.com/jensonjenkins/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/liuy1103/ip.git to complete... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/Cohii2/ip.git to complete... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:54 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/webtjs/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/webtjs/ip.git (master) completed! +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/LowTL/ip.git completed! +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepos +INFO: [75/189] Analyzing https://github.com/LowTL/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/Cohii2/ip.git... +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/jensonjenkins/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:35 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:54 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/jensonjenkins/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/Cohii2/ip.git to complete... +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/TimothyLKM/ip.git completed! +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/LowTL/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:35 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:54 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/LowTL/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/webtjs/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/TimothyLKM/ip.git completed! -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/yeozongyao/ip.git... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepos INFO: [76/189] Analyzing https://github.com/TimothyLKM/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/FeathersRe/ip.git completed! +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/yeozongyao/ip.git to complete... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/webtjs/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/webtjs/ip.git (master) completed! -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/EdmundTangg/ip.git... +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator analyzeRepos +INFO: [77/189] Analyzing https://github.com/FeathersRe/ip.git (master)... +Feb 09, 2024 8:57:54 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/EdmundTangg/ip.git to complete... +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/TimothyLKM/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:35 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:54 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/TimothyLKM/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:54 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/FeathersRe/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:54 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/FeathersRe/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/jensonjenkins/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/LowTL/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/jensonjenkins/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/jensonjenkins/ip.git (master) completed! -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/TimothyLKM/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/LowTL/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/LowTL/ip.git (master) completed! -Feb 09, 2024 2:55:35 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/TimothyLKM/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/TimothyLKM/ip.git (master) completed! -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/FeathersRe/ip.git completed! -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator analyzeRepos -INFO: [77/189] Analyzing https://github.com/FeathersRe/ip.git (master)... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/EdmundTangg/ip.git... -Feb 09, 2024 2:55:35 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/EdmundTangg/ip.git to complete... -Feb 09, 2024 2:55:35 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/FeathersRe/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:35 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/FeathersRe/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/Cohii2/ip.git completed! -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/ZhangWenyue3325/ip.git... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepos -INFO: [78/189] Analyzing https://github.com/Cohii2/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/ZhangWenyue3325/ip.git to complete... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/liuy1103/ip.git completed! -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/Cohii2/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:36 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/Cohii2/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepos -INFO: [79/189] Analyzing https://github.com/liuy1103/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/yuki-zmstr/ip.git... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/FeathersRe/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/yuki-zmstr/ip.git to complete... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/liuy1103/ip.git completed! +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/FeathersRe/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/FeathersRe/ip.git (master) completed! -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/ZhangWenyue3325/ip.git... +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepos +INFO: [78/189] Analyzing https://github.com/liuy1103/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/ZhangWenyue3325/ip.git to complete... +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/liuy1103/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:36 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:55 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/liuy1103/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/Cohii2/ip.git completed! +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepos +INFO: [79/189] Analyzing https://github.com/Cohii2/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/yuki-zmstr/ip.git... +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/yeozongyao/ip.git completed! -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepos -INFO: [80/189] Analyzing https://github.com/yeozongyao/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/yuki-zmstr/ip.git to complete... +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/EdmundTangg/ip.git completed! +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/Cohii2/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:55 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/Cohii2/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/classskipper351/ip.git... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/Cohii2/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepos +INFO: [80/189] Analyzing https://github.com/yeozongyao/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/Celineyaa/ip.git... +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepos +INFO: [81/189] Analyzing https://github.com/EdmundTangg/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/Celineyaa/ip.git to complete... +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/classskipper351/ip.git to complete... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/Cohii2/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/Cohii2/ip.git (master) completed! -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/yeozongyao/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:36 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:55 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/yeozongyao/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/EdmundTangg/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:55 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/EdmundTangg/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/liuy1103/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/Cohii2/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/liuy1103/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/liuy1103/ip.git (master) completed! -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/EdmundTangg/ip.git completed! -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepos -INFO: [81/189] Analyzing https://github.com/EdmundTangg/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/Celineyaa/ip.git... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/Celineyaa/ip.git to complete... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/Cohii2/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/Cohii2/ip.git (master) completed! +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/EdmundTangg/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/yeozongyao/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/EdmundTangg/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:36 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/EdmundTangg/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/EdmundTangg/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/EdmundTangg/ip.git (master) completed! +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/yeozongyao/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/yeozongyao/ip.git (master) completed! -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/ZhangWenyue3325/ip.git completed! -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepos INFO: [82/189] Analyzing https://github.com/ZhangWenyue3325/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/hongyijie06/ip.git... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/hongyijie06/ip.git to complete... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/EdmundTangg/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/ZhangWenyue3325/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:36 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:55 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/ZhangWenyue3325/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/EdmundTangg/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/EdmundTangg/ip.git (master) completed! -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/yuki-zmstr/ip.git completed! -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/Celineyaa/ip.git completed! +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepos +INFO: [83/189] Analyzing https://github.com/Celineyaa/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/BestDownLoader365/ip.git... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepos -INFO: [83/189] Analyzing https://github.com/yuki-zmstr/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/BestDownLoader365/ip.git to complete... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/yuki-zmstr/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:36 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/yuki-zmstr/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/classskipper351/ip.git completed! -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/yuki-zmstr/ip.git completed! +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepos INFO: [84/189] Analyzing https://github.com/classskipper351/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/ChinYanXu/ip.git... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/STeng618/ip.git... +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepos +INFO: [85/189] Analyzing https://github.com/yuki-zmstr/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/ChinYanXu/ip.git to complete... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/Celineyaa/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:55 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/Celineyaa/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/STeng618/ip.git to complete... +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/ZhangWenyue3325/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/yuki-zmstr/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:55 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/yuki-zmstr/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/classskipper351/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:36 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:55 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/classskipper351/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/ZhangWenyue3325/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/ZhangWenyue3325/ip.git (master) completed! -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/Celineyaa/ip.git completed! -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/STeng618/ip.git... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepos -INFO: [85/189] Analyzing https://github.com/Celineyaa/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/STeng618/ip.git to complete... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/Celineyaa/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/Celineyaa/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/Celineyaa/ip.git (master) completed! +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/classskipper351/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/Celineyaa/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:36 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/Celineyaa/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/classskipper351/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/classskipper351/ip.git (master) completed! -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/yuki-zmstr/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/yuki-zmstr/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/yuki-zmstr/ip.git (master) completed! -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/Celineyaa/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/hongyijie06/ip.git completed! -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/fungg0/ip.git... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepos INFO: [86/189] Analyzing https://github.com/hongyijie06/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/Celineyaa/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/Celineyaa/ip.git (master) completed! -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/fungg0/ip.git... +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/fungg0/ip.git to complete... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/hongyijie06/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:36 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:55 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/hongyijie06/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/BestDownLoader365/ip.git completed! -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepos -INFO: [87/189] Analyzing https://github.com/BestDownLoader365/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/pradeep-cod/ip.git... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepos +INFO: [87/189] Analyzing https://github.com/BestDownLoader365/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/pradeep-cod/ip.git to complete... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/ChinYanXu/ip.git completed! +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/BestDownLoader365/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:36 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:55 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/BestDownLoader365/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/hongyijie06/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/hongyijie06/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/hongyijie06/ip.git (master) completed! -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/ChinYanXu/ip.git completed! -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepos INFO: [88/189] Analyzing https://github.com/ChinYanXu/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/MayFairMI6/ip.git... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/hongyijie06/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/STeng618/ip.git completed! +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/MayFairMI6/ip.git to complete... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/hafizuddin-a/ip.git... +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepos +INFO: [89/189] Analyzing https://github.com/STeng618/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/ChinYanXu/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:36 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:55 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/ChinYanXu/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/STeng618/ip.git completed! -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepos -INFO: [89/189] Analyzing https://github.com/STeng618/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/hafizuddin-a/ip.git... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/hongyijie06/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/hongyijie06/ip.git (master) completed! +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/hafizuddin-a/ip.git to complete... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/STeng618/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:36 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:55 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/STeng618/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/ChinYanXu/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess WARNING: Exception met while trying to clone the repo "MayFairMI6/ip[master]", will skip this repo. reposense.system.CommandRunnerProcessException: Error returned from command git clone --bare 'https://github.com/MayFairMI6/ip.git' 'repos/MayFairMI6_ip/ip_bare' on path . : Cloning into bare repository 'repos/MayFairMI6_ip/ip_bare'... @@ -1678,785 +1678,785 @@ fatal: could not read Username for 'https://github.com': No such device or addre at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/YoengKokLeong/ip.git... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/fungg0/ip.git completed! -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/YoengKokLeong/ip.git to complete... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/ChinYanXu/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/ChinYanXu/ip.git (master) completed! -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepos -INFO: [90/189] Analyzing https://github.com/fungg0/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/RyanTDL/ip.git... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/BestDownLoader365/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/fungg0/ip.git completed! +Feb 09, 2024 8:57:55 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/BestDownLoader365/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/BestDownLoader365/ip.git (master) completed! +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/RyanTDL/ip.git... +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepos +INFO: [90/189] Analyzing https://github.com/fungg0/ip.git (master)... +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/RyanTDL/ip.git to complete... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/fungg0/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:36 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:55 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/fungg0/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/BestDownLoader365/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/BestDownLoader365/ip.git (master) completed! -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/pradeep-cod/ip.git completed! -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:55 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/SharlynLui/ip.git... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:55 AM reposense.report.ReportGenerator analyzeRepos INFO: [91/189] Analyzing https://github.com/pradeep-cod/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/SharlynLui/ip.git to complete... -Feb 09, 2024 2:55:36 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/STeng618/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/pradeep-cod/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:36 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:56 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/pradeep-cod/ip.git (master)... -Feb 09, 2024 2:55:36 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/fungg0/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/fungg0/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/fungg0/ip.git (master) completed! -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/STeng618/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/hafizuddin-a/ip.git completed! -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepos -INFO: [92/189] Analyzing https://github.com/hafizuddin-a/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/Luo-Z-Y/ip.git... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/STeng618/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/STeng618/ip.git (master) completed! -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/pradeep-cod/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepos +INFO: [92/189] Analyzing https://github.com/hafizuddin-a/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/Luo-Z-Y/ip.git... +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/Luo-Z-Y/ip.git to complete... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/pradeep-cod/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/pradeep-cod/ip.git (master) completed! -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/fungg0/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/hafizuddin-a/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:37 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:56 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/hafizuddin-a/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/fungg0/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/fungg0/ip.git (master) completed! +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/pradeep-cod/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/YoengKokLeong/ip.git completed! -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepos INFO: [93/189] Analyzing https://github.com/YoengKokLeong/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/seandooa/ip.git... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/RyanTDL/ip.git completed! -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/YHWong20/ip.git... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepos -INFO: [94/189] Analyzing https://github.com/RyanTDL/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/seandooa/ip.git to complete... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/hafizuddin-a/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/YHWong20/ip.git to complete... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/pradeep-cod/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/pradeep-cod/ip.git (master) completed! +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/YoengKokLeong/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:37 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:56 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/YoengKokLeong/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/hafizuddin-a/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/hafizuddin-a/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/hafizuddin-a/ip.git (master) completed! -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/RyanTDL/ip.git completed! +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/YHWong20/ip.git... +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepos +INFO: [94/189] Analyzing https://github.com/RyanTDL/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/YoengKokLeong/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/YHWong20/ip.git to complete... +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/YoengKokLeong/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/YoengKokLeong/ip.git (master) completed! +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/SharlynLui/ip.git completed! +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/RyanTDL/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:37 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:56 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/RyanTDL/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/SharlynLui/ip.git completed! -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepos INFO: [95/189] Analyzing https://github.com/SharlynLui/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/kyuichyi/ip.git... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/kyuichyi/ip.git to complete... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/YoengKokLeong/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/YoengKokLeong/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/YoengKokLeong/ip.git (master) completed! -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/SharlynLui/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:37 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:56 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/SharlynLui/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/RyanTDL/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/RyanTDL/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/SharlynLui/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/RyanTDL/ip.git (master) completed! -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/SharlynLui/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/SharlynLui/ip.git (master) completed! -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/Luo-Z-Y/ip.git completed! -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepos INFO: [96/189] Analyzing https://github.com/Luo-Z-Y/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/samuelory/ip.git... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/samuelory/ip.git to complete... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/Luo-Z-Y/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:37 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:56 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/Luo-Z-Y/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/RyanTDL/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/SharlynLui/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/seandooa/ip.git completed! -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/RyanTDL/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/SharlynLui/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/RyanTDL/ip.git (master) completed! +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/SharlynLui/ip.git (master) completed! +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepos INFO: [97/189] Analyzing https://github.com/seandooa/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/yzhanglp/ip.git... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/YHWong20/ip.git completed! -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/yzhanglp/ip.git to complete... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepos -INFO: [98/189] Analyzing https://github.com/YHWong20/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/AhmedShaiyan/ip.git... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/Luo-Z-Y/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/AhmedShaiyan/ip.git to complete... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/seandooa/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:37 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:56 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/seandooa/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/Luo-Z-Y/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/Luo-Z-Y/ip.git (master) completed! -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/YHWong20/ip.git completed! +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepos +INFO: [98/189] Analyzing https://github.com/YHWong20/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/AhmedShaiyan/ip.git... +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/AhmedShaiyan/ip.git to complete... +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/seandooa/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/YHWong20/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:37 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:56 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/YHWong20/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/seandooa/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/seandooa/ip.git (master) completed! +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/kyuichyi/ip.git completed! -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepos INFO: [99/189] Analyzing https://github.com/kyuichyi/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/Mahesh1772/ip.git... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/Mahesh1772/ip.git to complete... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/seandooa/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/kyuichyi/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:37 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/kyuichyi/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/seandooa/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/seandooa/ip.git (master) completed! -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/YHWong20/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/samuelory/ip.git completed! -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepos -INFO: [100/189] Analyzing https://github.com/samuelory/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/syj02/ip.git... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/YHWong20/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepos +INFO: [100/189] Analyzing https://github.com/samuelory/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/kyuichyi/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:56 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/kyuichyi/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/syj02/ip.git to complete... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/YHWong20/ip.git (master) completed! -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/kyuichyi/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/samuelory/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:37 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:56 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/samuelory/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/kyuichyi/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/kyuichyi/ip.git (master) completed! -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/samuelory/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/yzhanglp/ip.git completed! -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepos INFO: [101/189] Analyzing https://github.com/yzhanglp/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/chenhowy/ip.git... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/chenhowy/ip.git to complete... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/samuelory/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/samuelory/ip.git (master) completed! -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/yzhanglp/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:37 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:56 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/yzhanglp/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/Mahesh1772/ip.git completed! -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/YHWong20/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/kyuichyi/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/AhmedShaiyan/ip.git completed! +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/YHWong20/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/YHWong20/ip.git (master) completed! +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/mihirheda02/ip.git... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepos -INFO: [102/189] Analyzing https://github.com/Mahesh1772/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepos +INFO: [102/189] Analyzing https://github.com/AhmedShaiyan/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/kyuichyi/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/kyuichyi/ip.git (master) completed! +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/mihirheda02/ip.git to complete... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/AhmedShaiyan/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:56 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/AhmedShaiyan/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/Mahesh1772/ip.git completed! +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/samuelory/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepos +INFO: [103/189] Analyzing https://github.com/Mahesh1772/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/azamanis/ip.git... +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/azamanis/ip.git to complete... +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/samuelory/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/samuelory/ip.git (master) completed! +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/syj02/ip.git completed! +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/Mahesh1772/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:37 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:56 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/Mahesh1772/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/ZhuSijia0711/ip.git... +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepos +INFO: [104/189] Analyzing https://github.com/syj02/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/yzhanglp/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/yzhanglp/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/yzhanglp/ip.git (master) completed! -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/syj02/ip.git completed! -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepos -INFO: [103/189] Analyzing https://github.com/syj02/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/azamanis/ip.git... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/azamanis/ip.git to complete... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/Mahesh1772/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/ZhuSijia0711/ip.git to complete... +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/syj02/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:37 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:56 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/syj02/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/Mahesh1772/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/Mahesh1772/ip.git (master) completed! -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/chenhowy/ip.git completed! -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/syj02/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepos -INFO: [104/189] Analyzing https://github.com/chenhowy/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/ZhuSijia0711/ip.git... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/ZhuSijia0711/ip.git to complete... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/syj02/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/syj02/ip.git (master) completed! -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/yzhanglp/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/yzhanglp/ip.git (master) completed! +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/nickczh/ip.git... +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator analyzeRepos +INFO: [105/189] Analyzing https://github.com/chenhowy/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/nickczh/ip.git to complete... +Feb 09, 2024 8:57:56 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/chenhowy/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:37 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:56 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/chenhowy/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:56 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/AhmedShaiyan/ip.git (master)... +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/mihirheda02/ip.git completed! -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/nickczh/ip.git... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator analyzeRepos -INFO: [105/189] Analyzing https://github.com/mihirheda02/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/nickczh/ip.git to complete... -Feb 09, 2024 2:55:37 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:56 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/Hws2209/ip.git... +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/Hws2209/ip.git to complete... +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/azamanis/ip.git completed! +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/AhmedShaiyan/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/AhmedShaiyan/ip.git (master) completed! +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepos +INFO: [106/189] Analyzing https://github.com/mihirheda02/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/fxe025/ip.git... +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/Mahesh1772/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/fxe025/ip.git to complete... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/mihirheda02/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:37 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:57 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/mihirheda02/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/ZhuSijia0711/ip.git completed! +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/tinaliu27/ip.git... +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/Mahesh1772/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/Mahesh1772/ip.git (master) completed! +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/tinaliu27/ip.git to complete... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepos +INFO: [107/189] Analyzing https://github.com/azamanis/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/azamanis/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:57 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/azamanis/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/nickczh/ip.git completed! +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/chenhowy/ip.git (master)... -Feb 09, 2024 2:55:37 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/syj02/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/ningsongshen/ip.git... +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/ningsongshen/ip.git to complete... +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/chenhowy/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/syj02/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/chenhowy/ip.git (master) completed! -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/azamanis/ip.git completed! -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepos -INFO: [106/189] Analyzing https://github.com/azamanis/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/Hws2209/ip.git... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/Hws2209/ip.git to complete... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/azamanis/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:38 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/azamanis/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/syj02/ip.git (master) completed! +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepos +INFO: [108/189] Analyzing https://github.com/ZhuSijia0711/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepos +INFO: [109/189] Analyzing https://github.com/nickczh/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/ZhuSijia0711/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:57 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/ZhuSijia0711/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/Hws2209/ip.git completed! +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/nickczh/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:57 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/nickczh/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/nyh3/ip.git... +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/mihirheda02/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/nyh3/ip.git to complete... +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/fxe025/ip.git completed! +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/mihirheda02/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/mihirheda02/ip.git (master) completed! -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepos +INFO: [110/189] Analyzing https://github.com/Hws2209/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/john-nng/ip.git... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/Hws2209/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:57 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/Hws2209/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/john-nng/ip.git to complete... +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/azamanis/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/tinaliu27/ip.git completed! +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/cayennegoh/ip.git... +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/cayennegoh/ip.git to complete... +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/azamanis/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/azamanis/ip.git (master) completed! -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/ZhuSijia0711/ip.git completed! -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepos -INFO: [107/189] Analyzing https://github.com/ZhuSijia0711/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/fxe025/ip.git... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/fxe025/ip.git to complete... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/ZhuSijia0711/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:38 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/ZhuSijia0711/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/nickczh/ip.git completed! -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepos -INFO: [108/189] Analyzing https://github.com/nickczh/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/tinaliu27/ip.git... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/tinaliu27/ip.git to complete... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/nickczh/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:38 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/nickczh/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepos +INFO: [111/189] Analyzing https://github.com/fxe025/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/fxe025/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:57 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/fxe025/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/ZhuSijia0711/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/ZhuSijia0711/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/ZhuSijia0711/ip.git (master) completed! -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/Hws2209/ip.git completed! -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepos -INFO: [109/189] Analyzing https://github.com/Hws2209/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/ningsongshen/ip.git... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/ningsongshen/ip.git to complete... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/Hws2209/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:38 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/Hws2209/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/nickczh/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/nickczh/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/nickczh/ip.git (master) completed! -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepos +INFO: [112/189] Analyzing https://github.com/tinaliu27/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/ningsongshen/ip.git completed! +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/kirangeofran/ip.git... +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/kirangeofran/ip.git to complete... +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/Hws2209/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/fxe025/ip.git completed! -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/Hws2209/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/Hws2209/ip.git (master) completed! -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepos -INFO: [110/189] Analyzing https://github.com/fxe025/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/nyh3/ip.git... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/nyh3/ip.git to complete... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/fxe025/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:38 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/fxe025/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/tinaliu27/ip.git completed! -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepos -INFO: [111/189] Analyzing https://github.com/tinaliu27/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/john-nng/ip.git... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/john-nng/ip.git to complete... -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/fxe025/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/tinaliu27/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:38 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:57 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/tinaliu27/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/fxe025/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/fxe025/ip.git (master) completed! -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/tinaliu27/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/tinaliu27/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/tinaliu27/ip.git (master) completed! -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/ningsongshen/ip.git completed! -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepos -INFO: [112/189] Analyzing https://github.com/ningsongshen/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/cayennegoh/ip.git... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/cayennegoh/ip.git to complete... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/nickczh/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/nyh3/ip.git completed! +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/Hws2209/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/Hws2209/ip.git (master) completed! +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/Heart-of-N1/ip.git... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepos +INFO: [113/189] Analyzing https://github.com/ningsongshen/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/nickczh/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/nickczh/ip.git (master) completed! +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/Heart-of-N1/ip.git to complete... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepos +INFO: [114/189] Analyzing https://github.com/nyh3/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/ningsongshen/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:38 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:57 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/ningsongshen/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/ningsongshen/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/ningsongshen/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/ningsongshen/ip.git (master) completed! -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/nyh3/ip.git completed! -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepos -INFO: [113/189] Analyzing https://github.com/nyh3/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/kirangeofran/ip.git... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/kirangeofran/ip.git to complete... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/tinaliu27/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/nyh3/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:38 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:57 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/nyh3/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/fxe025/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/tinaliu27/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/tinaliu27/ip.git (master) completed! +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/fxe025/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/fxe025/ip.git (master) completed! +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/john-nng/ip.git completed! -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/Heart-of-N1/ip.git... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepos -INFO: [114/189] Analyzing https://github.com/john-nng/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/AhmedShaiyan/ip.git completed! -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/Heart-of-N1/ip.git to complete... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepos -INFO: [115/189] Analyzing https://github.com/AhmedShaiyan/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/Vavinan/ip.git... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepos +INFO: [115/189] Analyzing https://github.com/john-nng/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/Vavinan/ip.git to complete... -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/nyh3/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/john-nng/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:38 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/john-nng/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/AhmedShaiyan/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:38 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/AhmedShaiyan/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/nyh3/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/nyh3/ip.git (master) completed! -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/cayennegoh/ip.git completed! -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/mukund1403/ip.git... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepos INFO: [116/189] Analyzing https://github.com/cayennegoh/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/mukund1403/ip.git... +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/mukund1403/ip.git to complete... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/john-nng/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:57 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/john-nng/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/cayennegoh/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:38 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:57 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/cayennegoh/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/AhmedShaiyan/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/john-nng/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/ningsongshen/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/kirangeofran/ip.git completed! -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/AhmedShaiyan/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/AhmedShaiyan/ip.git (master) completed! -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/cayennegoh/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/john-nng/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/wenenhoe/ip.git... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/ningsongshen/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/ningsongshen/ip.git (master) completed! +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepos INFO: [117/189] Analyzing https://github.com/kirangeofran/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/john-nng/ip.git (master) completed! -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/wenenhoe/ip.git to complete... -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/cayennegoh/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/cayennegoh/ip.git (master) completed! -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/nyh3/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/nyh3/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/nyh3/ip.git (master) completed! +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/kirangeofran/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:38 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:57 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/kirangeofran/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/kirangeofran/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/kirangeofran/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/kirangeofran/ip.git (master) completed! -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/Heart-of-N1/ip.git completed! -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepos INFO: [118/189] Analyzing https://github.com/Heart-of-N1/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/64-1/ip.git... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/64-1/ip.git to complete... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/Vavinan/ip.git completed! -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/chenxk619/ip.git... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator analyzeRepos -INFO: [119/189] Analyzing https://github.com/Vavinan/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/Heart-of-N1/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:38 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:57 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/Heart-of-N1/ip.git (master)... -Feb 09, 2024 2:55:38 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/cayennegoh/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/john-nng/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/cayennegoh/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/cayennegoh/ip.git (master) completed! +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/john-nng/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/john-nng/ip.git (master) completed! +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/Vavinan/ip.git completed! +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepos +INFO: [119/189] Analyzing https://github.com/Vavinan/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/chenxk619/ip.git... +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/chenxk619/ip.git to complete... -Feb 09, 2024 2:55:38 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/kirangeofran/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/Vavinan/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:38 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:57 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/Vavinan/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:57 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/kirangeofran/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/kirangeofran/ip.git (master) completed! +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/mukund1403/ip.git completed! -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepos -INFO: [120/189] Analyzing https://github.com/mukund1403/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/paturikarthik/ip.git... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepos +INFO: [120/189] Analyzing https://github.com/mukund1403/ip.git (master)... +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/paturikarthik/ip.git to complete... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/wenenhoe/ip.git completed! +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/mukund1403/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:39 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:57 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/mukund1403/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/Heart-of-N1/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/Heart-of-N1/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/Heart-of-N1/ip.git (master) completed! -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/wenenhoe/ip.git completed! -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/hwc0419/ip.git... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:57 AM reposense.report.ReportGenerator analyzeRepos INFO: [121/189] Analyzing https://github.com/wenenhoe/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/Vavinan/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:57 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/hwc0419/ip.git... +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/hwc0419/ip.git to complete... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:58 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/Heart-of-N1/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/wenenhoe/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:39 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:58 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/wenenhoe/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:58 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/Heart-of-N1/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/Heart-of-N1/ip.git (master) completed! +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/64-1/ip.git completed! +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/avrilgk/ip.git... +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator analyzeRepos +INFO: [122/189] Analyzing https://github.com/64-1/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/Vavinan/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/avrilgk/ip.git to complete... +Feb 09, 2024 8:57:58 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/Vavinan/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/Vavinan/ip.git (master) completed! -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:58 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/mukund1403/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/64-1/ip.git completed! -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepos -INFO: [122/189] Analyzing https://github.com/64-1/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/avrilgk/ip.git... -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:58 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/mukund1403/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/mukund1403/ip.git (master) completed! -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/avrilgk/ip.git to complete... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/chenxk619/ip.git completed! -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/64-1/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:58 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/64-1/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/chenxk619/ip.git completed! +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator analyzeRepos INFO: [123/189] Analyzing https://github.com/chenxk619/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/HenryGan138/ip.git... -Feb 09, 2024 2:55:39 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/64-1/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/HenryGan138/ip.git to complete... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/chenxk619/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:39 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:58 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/chenxk619/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/paturikarthik/ip.git completed! -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/Andy123qq4/ip.git... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator analyzeRepos INFO: [124/189] Analyzing https://github.com/paturikarthik/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/Andy123qq4/ip.git to complete... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/paturikarthik/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:39 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/paturikarthik/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/64-1/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/hwc0419/ip.git completed! -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/chenxk619/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:58 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/wenenhoe/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/paturikarthik/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:58 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/paturikarthik/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/NgYaoDong/ip.git... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/NgYaoDong/ip.git to complete... -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/64-1/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/64-1/ip.git (master) completed! -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepos -INFO: [125/189] Analyzing https://github.com/hwc0419/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/chenxk619/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/chenxk619/ip.git (master) completed! -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:58 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/wenenhoe/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:58 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/64-1/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/wenenhoe/ip.git (master) completed! -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator analyzeRepos +INFO: [125/189] Analyzing https://github.com/hwc0419/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/64-1/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/64-1/ip.git (master) completed! +Feb 09, 2024 8:57:58 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/chenxk619/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/hwc0419/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:39 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:58 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/hwc0419/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:58 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/chenxk619/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/chenxk619/ip.git (master) completed! +Feb 09, 2024 8:57:58 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/paturikarthik/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/avrilgk/ip.git completed! -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/paturikarthik/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/HenryGan138/ip.git completed! +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator analyzeRepos +INFO: [126/189] Analyzing https://github.com/HenryGan138/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/Joshuahoky/ip.git... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepos -INFO: [126/189] Analyzing https://github.com/avrilgk/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:58 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/paturikarthik/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/paturikarthik/ip.git (master) completed! -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/HenryGan138/ip.git completed! -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/Joshuahoky/ip.git to complete... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/ZMinghuiZ/ip.git... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepos -INFO: [127/189] Analyzing https://github.com/HenryGan138/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/avrilgk/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:39 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/avrilgk/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/Andy123qq4/ip.git completed! -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/ZMinghuiZ/ip.git to complete... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/B1G-SAM/ip.git... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepos -INFO: [128/189] Analyzing https://github.com/Andy123qq4/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/B1G-SAM/ip.git to complete... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:58 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/hwc0419/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/HenryGan138/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:39 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:58 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/HenryGan138/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/Andy123qq4/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:39 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/Andy123qq4/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/hwc0419/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:58 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/hwc0419/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/hwc0419/ip.git (master) completed! -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/Andy123qq4/ip.git completed! +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/NgYaoDong/ip.git completed! -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/Andy123qq4/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepos -INFO: [129/189] Analyzing https://github.com/NgYaoDong/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator analyzeRepos +INFO: [127/189] Analyzing https://github.com/NgYaoDong/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/ZMinghuiZ/ip.git... +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator analyzeRepos +INFO: [128/189] Analyzing https://github.com/Andy123qq4/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/B1G-SAM/ip.git... +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/avrilgk/ip.git completed! +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/B1G-SAM/ip.git to complete... +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/ZMinghuiZ/ip.git to complete... +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/Andy123qq4/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:58 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/Andy123qq4/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator analyzeRepos +INFO: [129/189] Analyzing https://github.com/avrilgk/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/JianJiaT/ip.git... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/JianJiaT/ip.git to complete... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/NgYaoDong/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:39 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:58 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/NgYaoDong/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/Andy123qq4/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/Andy123qq4/ip.git (master) completed! -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/avrilgk/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/JianJiaT/ip.git to complete... +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/avrilgk/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:58 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/avrilgk/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/Joshuahoky/ip.git completed! -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/avrilgk/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/avrilgk/ip.git (master) completed! -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepos -INFO: [130/189] Analyzing https://github.com/Joshuahoky/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/eliztan/ip.git... -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:58 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/HenryGan138/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/eliztan/ip.git to complete... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/ZMinghuiZ/ip.git completed! -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepos -INFO: [131/189] Analyzing https://github.com/ZMinghuiZ/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/V4Vern/ip.git... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/Joshuahoky/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:39 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/Joshuahoky/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:58 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/HenryGan138/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/HenryGan138/ip.git (master) completed! -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/V4Vern/ip.git to complete... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator analyzeRepos +INFO: [130/189] Analyzing https://github.com/Joshuahoky/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/Andy123qq4/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/Joshuahoky/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:58 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/Joshuahoky/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/avrilgk/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/Andy123qq4/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/Andy123qq4/ip.git (master) completed! +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/B1G-SAM/ip.git completed! -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/ZMinghuiZ/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:39 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/ZMinghuiZ/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepos -INFO: [132/189] Analyzing https://github.com/B1G-SAM/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/ZMinghuiZ/ip.git completed! +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/V4Vern/ip.git... +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator analyzeRepos +INFO: [131/189] Analyzing https://github.com/B1G-SAM/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/haowern98/ip.git... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/V4Vern/ip.git to complete... +Feb 09, 2024 8:57:58 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/avrilgk/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/JianJiaT/ip.git completed! +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/avrilgk/ip.git (master) completed! +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator analyzeRepos +INFO: [132/189] Analyzing https://github.com/ZMinghuiZ/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/haowern98/ip.git to complete... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/B1G-SAM/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:39 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:58 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/B1G-SAM/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/JianJiaT/ip.git completed! -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/nur-haziq/ip.git... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/nur-haziq/ip.git to complete... -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/Joshuahoky/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:58 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/ZMinghuiZ/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:58 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/ZMinghuiZ/ip.git (master)... +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/eliztan/ip.git completed! +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner waitForCloneProcess WARNING: Exception met while trying to clone the repo "haowern98/ip[master]", will skip this repo. reposense.system.CommandRunnerProcessException: Error returned from command git clone --bare 'https://github.com/haowern98/ip.git' 'repos/haowern98_ip/ip_bare' on path . : Cloning into bare repository 'repos/haowern98_ip/ip_bare'... @@ -2472,81 +2472,69 @@ fatal: could not read Username for 'https://github.com': No such device or addre at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -Feb 09, 2024 2:55:39 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/dtaywd/ip.git... -Feb 09, 2024 2:55:39 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:58 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/adamzzq/ip.git... +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/dtaywd/ip.git to complete... +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/adamzzq/ip.git to complete... +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/Joshuahoky/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/Joshuahoky/ip.git (master)... -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/Joshuahoky/ip.git (master) completed! -Feb 09, 2024 2:55:39 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepos INFO: [133/189] Analyzing https://github.com/JianJiaT/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/dtaywd/ip.git to complete... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/B1G-SAM/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/B1G-SAM/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/B1G-SAM/ip.git (master) completed! +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepos +INFO: [134/189] Analyzing https://github.com/eliztan/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/JianJiaT/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:40 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/JianJiaT/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/eliztan/ip.git completed! -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/adamzzq/ip.git... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/V4Vern/ip.git completed! -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/adamzzq/ip.git to complete... -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/B1G-SAM/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:59 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/JianJiaT/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/NgYaoDong/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/dylansiew/ip.git... -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/ZMinghuiZ/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/NgYaoDong/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/NgYaoDong/ip.git (master) completed! -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepos -INFO: [134/189] Analyzing https://github.com/eliztan/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/dylansiew/ip.git to complete... -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/ZMinghuiZ/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/ZMinghuiZ/ip.git (master) completed! -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/B1G-SAM/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/B1G-SAM/ip.git (master) completed! -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepos -INFO: [135/189] Analyzing https://github.com/V4Vern/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/nur-haziq/ip.git completed! -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepos -INFO: [136/189] Analyzing https://github.com/nur-haziq/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/kyhjonathan/ip.git... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/NgYaoDong/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/eliztan/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:40 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:59 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/eliztan/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/dtaywd/ip.git completed! -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/NgYaoDong/ip.git (master) completed! +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/kyhjonathan/ip.git... +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/dylansiew/ip.git to complete... +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/kyhjonathan/ip.git to complete... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepos +INFO: [135/189] Analyzing https://github.com/V4Vern/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/V4Vern/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:40 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:59 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/V4Vern/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/Daviancold/ip.git... -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/JianJiaT/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/nur-haziq/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:40 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/nur-haziq/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/adamzzq/ip.git completed! +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/ZMinghuiZ/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/dtaywd/ip.git completed! +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess WARNING: Exception met while trying to clone the repo "dylansiew/ip[master]", will skip this repo. reposense.system.CommandRunnerProcessException: Error returned from command git clone --bare 'https://github.com/dylansiew/ip.git' 'repos/dylansiew_ip/ip_bare' on path . : Cloning into bare repository 'repos/dylansiew_ip/ip_bare'... @@ -2562,317 +2550,319 @@ fatal: could not read Username for 'https://github.com': No such device or addre at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/Daviancold/ip.git... +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/CXIA17/ip.git... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/Daviancold/ip.git to complete... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/CXIA17/ip.git to complete... -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/JianJiaT/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/JianJiaT/ip.git (master) completed! -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepos -INFO: [137/189] Analyzing https://github.com/dtaywd/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/adamzzq/ip.git completed! -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/dtaywd/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:40 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/dtaywd/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/Aak242/ip.git... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/ZMinghuiZ/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/ZMinghuiZ/ip.git (master) completed! +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepos +INFO: [136/189] Analyzing https://github.com/nur-haziq/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/CXIA17/ip.git to complete... +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/Aak242/ip.git to complete... -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/nur-haziq/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:59 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/nur-haziq/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/eliztan/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/eliztan/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/eliztan/ip.git (master) completed! -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepos +INFO: [137/189] Analyzing https://github.com/dtaywd/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/JianJiaT/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/JianJiaT/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/JianJiaT/ip.git (master) completed! +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/dtaywd/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:59 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/dtaywd/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepos INFO: [138/189] Analyzing https://github.com/adamzzq/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/V4Vern/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/adamzzq/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:40 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:59 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/adamzzq/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/V4Vern/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/V4Vern/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/V4Vern/ip.git (master) completed! -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/nur-haziq/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/nur-haziq/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/nur-haziq/ip.git (master) completed! -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/kyhjonathan/ip.git completed! -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/dtaywd/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/nkotaa/ip.git... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepos INFO: [139/189] Analyzing https://github.com/kyhjonathan/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/Daviancold/ip.git completed! -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/dtaywd/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/dtaywd/ip.git (master) completed! -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/nkotaa/ip.git... +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/nkotaa/ip.git to complete... +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/CXIA17/ip.git completed! -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepos -INFO: [140/189] Analyzing https://github.com/Daviancold/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/Daviancold/ip.git completed! +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/kyhjonathan/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:59 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/kyhjonathan/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/nur-haziq/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/1simjustin/ip.git... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepos -INFO: [141/189] Analyzing https://github.com/CXIA17/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/ShyamKrishna33/ip.git... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/nkotaa/ip.git to complete... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/Aak242/ip.git completed! +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/1simjustin/ip.git to complete... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/kyhjonathan/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:40 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/kyhjonathan/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/ShyamKrishna33/ip.git to complete... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/EugeneChanJiajun/ip.git... +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/nur-haziq/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/nur-haziq/ip.git (master) completed! +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepos +INFO: [140/189] Analyzing https://github.com/Daviancold/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/EugeneChanJiajun/ip.git to complete... +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/Daviancold/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:40 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:59 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/Daviancold/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/Aak242/ip.git completed! -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/dtaywd/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/dtaywd/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/dtaywd/ip.git (master) completed! +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepos +INFO: [141/189] Analyzing https://github.com/CXIA17/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/kyhjonathan/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/CXIA17/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:40 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:59 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/CXIA17/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/EugeneChanJiajun/ip.git... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/EugeneChanJiajun/ip.git to complete... -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/adamzzq/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/kyhjonathan/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/CXIA17/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/kyhjonathan/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/kyhjonathan/ip.git (master) completed! -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/Daviancold/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/adamzzq/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepos INFO: [142/189] Analyzing https://github.com/Aak242/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/adamzzq/ip.git (master) completed! -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/CXIA17/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/CXIA17/ip.git (master) completed! -Feb 09, 2024 2:55:40 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/Daviancold/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/Daviancold/ip.git (master) completed! -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/Aak242/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:40 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/Aak242/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/nkotaa/ip.git completed! -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepos -INFO: [143/189] Analyzing https://github.com/nkotaa/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/nikhil-2101/ip.git... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/nikhil-2101/ip.git to complete... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/1simjustin/ip.git completed! +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/ShyamKrishna33/ip.git completed! -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepos -INFO: [144/189] Analyzing https://github.com/ShyamKrishna33/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/nikhil-2101/ip.git to complete... +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/Aak242/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:57:59 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/Aak242/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/LuoYu-uwu/ip.git... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/a-wild-chocolate/ip.git... +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/adamzzq/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/EugeneChanJiajun/ip.git completed! +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/LuoYu-uwu/ip.git to complete... +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/a-wild-chocolate/ip.git to complete... +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/annoy-o-mus/ip.git... +Feb 09, 2024 8:57:59 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/annoy-o-mus/ip.git to complete... +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/adamzzq/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/Daviancold/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/adamzzq/ip.git (master) completed! +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepos +INFO: [143/189] Analyzing https://github.com/nkotaa/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/nkotaa/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:40 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:59 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/nkotaa/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/1simjustin/ip.git completed! -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/LuoYu-uwu/ip.git to complete... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/Daviancold/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/Daviancold/ip.git (master) completed! +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepos +INFO: [144/189] Analyzing https://github.com/ShyamKrishna33/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/ShyamKrishna33/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:40 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:57:59 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/ShyamKrishna33/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator analyzeRepos -INFO: [145/189] Analyzing https://github.com/1simjustin/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/a-wild-chocolate/ip.git... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/a-wild-chocolate/ip.git to complete... -Feb 09, 2024 2:55:40 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/1simjustin/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:40 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/1simjustin/ip.git (master)... -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/EugeneChanJiajun/ip.git completed! -Feb 09, 2024 2:55:40 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/annoy-o-mus/ip.git... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/CXIA17/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/Aak242/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/annoy-o-mus/ip.git to complete... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/CXIA17/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/CXIA17/ip.git (master) completed! +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepos +INFO: [145/189] Analyzing https://github.com/1simjustin/ip.git (master)... +Feb 09, 2024 8:57:59 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/Aak242/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/Aak242/ip.git (master) completed! -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:57:59 AM reposense.report.ReportGenerator analyzeRepos INFO: [146/189] Analyzing https://github.com/EugeneChanJiajun/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/1simjustin/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:58:00 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/1simjustin/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/EugeneChanJiajun/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:41 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:58:00 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/EugeneChanJiajun/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/nkotaa/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/ShyamKrishna33/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/nikhil-2101/ip.git completed! +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/nkotaa/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/nkotaa/ip.git (master) completed! -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/ShyamKrishna33/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/ShyamKrishna33/ip.git (master) completed! -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/1simjustin/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/nikhil-2101/ip.git completed! -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepos INFO: [147/189] Analyzing https://github.com/nikhil-2101/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/jasraa/ip.git... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/jasraa/ip.git to complete... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/1simjustin/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/1simjustin/ip.git (master) completed! -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/nikhil-2101/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:41 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/nikhil-2101/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/LuoYu-uwu/ip.git completed! -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepos -INFO: [148/189] Analyzing https://github.com/LuoYu-uwu/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/jasraa/ip.git to complete... +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/Fureimi/ip.git... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/EugeneChanJiajun/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/Fureimi/ip.git to complete... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/a-wild-chocolate/ip.git completed! -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/nikhil-2101/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:58:00 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/nikhil-2101/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/z-wenqing/ip.git... +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/annoy-o-mus/ip.git completed! +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/ShyamKrishna33/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/IanFH/ip.git... +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/z-wenqing/ip.git to complete... +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/IanFH/ip.git to complete... +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/EugeneChanJiajun/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/ShyamKrishna33/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/EugeneChanJiajun/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/ShyamKrishna33/ip.git (master) completed! +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/EugeneChanJiajun/ip.git (master) completed! -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/LuoYu-uwu/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:41 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/LuoYu-uwu/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepos +INFO: [148/189] Analyzing https://github.com/LuoYu-uwu/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepos INFO: [149/189] Analyzing https://github.com/a-wild-chocolate/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/z-wenqing/ip.git... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/z-wenqing/ip.git to complete... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/1simjustin/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/a-wild-chocolate/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:41 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:58:00 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/a-wild-chocolate/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/1simjustin/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/1simjustin/ip.git (master) completed! +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/LuoYu-uwu/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:58:00 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/LuoYu-uwu/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepos +INFO: [150/189] Analyzing https://github.com/annoy-o-mus/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/nikhil-2101/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/annoy-o-mus/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:58:00 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/annoy-o-mus/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/nikhil-2101/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/nikhil-2101/ip.git (master) completed! -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/annoy-o-mus/ip.git completed! -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/IanFH/ip.git... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepos -INFO: [150/189] Analyzing https://github.com/annoy-o-mus/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/a-wild-chocolate/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/LuoYu-uwu/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/IanFH/ip.git to complete... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/a-wild-chocolate/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/a-wild-chocolate/ip.git (master) completed! -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/LuoYu-uwu/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/LuoYu-uwu/ip.git (master) completed! -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/annoy-o-mus/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:41 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/annoy-o-mus/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/Fureimi/ip.git completed! +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/jasraa/ip.git completed! -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepos -INFO: [151/189] Analyzing https://github.com/jasraa/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepos +INFO: [151/189] Analyzing https://github.com/Fureimi/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/nidhi-nayak/ip.git... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/nidhi-nayak/ip.git to complete... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/jasraa/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:41 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/jasraa/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/Fureimi/ip.git completed! -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepos -INFO: [152/189] Analyzing https://github.com/Fureimi/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/hailey-jung/ip.git... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/nidhi-nayak/ip.git to complete... +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/z-wenqing/ip.git completed! +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/JackieNeoCEG/ip.git... +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/hailey-jung/ip.git to complete... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/a-wild-chocolate/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/a-wild-chocolate/ip.git (master) completed! +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/IanFH/ip.git completed! +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepos +INFO: [152/189] Analyzing https://github.com/jasraa/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/Fureimi/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:41 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:58:00 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/Fureimi/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/z-wenqing/ip.git completed! -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/JackieNeoCEG/ip.git... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepos -INFO: [153/189] Analyzing https://github.com/z-wenqing/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/jasraa/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/PureUsagi/ip.git... +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/JackieNeoCEG/ip.git to complete... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/jasraa/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/jasraa/ip.git (master) completed! -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/z-wenqing/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:41 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/z-wenqing/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/PureUsagi/ip.git to complete... +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/jasraa/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:58:00 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/jasraa/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/LuoYu-uwu/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess WARNING: Exception met while trying to clone the repo "hailey-jung/ip[master]", will skip this repo. reposense.system.CommandRunnerProcessException: Error returned from command git clone --bare 'https://github.com/hailey-jung/ip.git' 'repos/hailey-jung_ip/ip_bare' on path . : Cloning into bare repository 'repos/hailey-jung_ip/ip_bare'... @@ -2888,571 +2878,581 @@ fatal: could not read Username for 'https://github.com': No such device or addre at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/annoy-o-mus/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/PureUsagi/ip.git... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/IanFH/ip.git completed! -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/PureUsagi/ip.git to complete... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/annoy-o-mus/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/annoy-o-mus/ip.git (master) completed! -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/CerealMiller/ip.git... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepos -INFO: [154/189] Analyzing https://github.com/IanFH/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/LuoYu-uwu/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/LuoYu-uwu/ip.git (master) completed! +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/CerealMiller/ip.git to complete... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/IanFH/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:41 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/IanFH/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepos +INFO: [153/189] Analyzing https://github.com/z-wenqing/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/z-wenqing/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:58:00 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/z-wenqing/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/Fureimi/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/jasraa/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/Fureimi/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/annoy-o-mus/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/Fureimi/ip.git (master) completed! -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/nidhi-nayak/ip.git completed! -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepos +INFO: [154/189] Analyzing https://github.com/IanFH/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/jasraa/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/jasraa/ip.git (master) completed! +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/IanFH/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:58:00 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/IanFH/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/annoy-o-mus/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/annoy-o-mus/ip.git (master) completed! +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/z-wenqing/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/nidhi-nayak/ip.git completed! +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/JackieNeoCEG/ip.git completed! +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/z-wenqing/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepos INFO: [155/189] Analyzing https://github.com/nidhi-nayak/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/sweijie24/ip.git... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/sweijie24/ip.git to complete... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/z-wenqing/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/z-wenqing/ip.git (master) completed! -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/sweijie24/ip.git to complete... +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/XavierLiau34/ip.git... +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepos +INFO: [156/189] Analyzing https://github.com/JackieNeoCEG/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/PureUsagi/ip.git completed! +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepos +INFO: [157/189] Analyzing https://github.com/PureUsagi/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/JustinSoh/ip.git... +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/nidhi-nayak/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:41 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:58:00 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/nidhi-nayak/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/XavierLiau34/ip.git to complete... +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/CerealMiller/ip.git completed! +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/JustinSoh/ip.git to complete... +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/JackieNeoCEG/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:58:00 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/JackieNeoCEG/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/PureUsagi/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:58:00 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/PureUsagi/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/damiwee/ip.git... +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/damiwee/ip.git to complete... +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/IanFH/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/nidhi-nayak/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/IanFH/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/IanFH/ip.git (master) completed! -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/nidhi-nayak/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/nidhi-nayak/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/nidhi-nayak/ip.git (master) completed! -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/JackieNeoCEG/ip.git completed! -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepos -INFO: [156/189] Analyzing https://github.com/JackieNeoCEG/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/XavierLiau34/ip.git... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/XavierLiau34/ip.git to complete... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/JackieNeoCEG/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:41 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/JackieNeoCEG/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/PureUsagi/ip.git completed! -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepos -INFO: [157/189] Analyzing https://github.com/PureUsagi/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/JustinSoh/ip.git... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/JustinSoh/ip.git to complete... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/CerealMiller/ip.git completed! -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepos INFO: [158/189] Analyzing https://github.com/CerealMiller/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/damiwee/ip.git... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/damiwee/ip.git to complete... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/PureUsagi/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:41 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/PureUsagi/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/CerealMiller/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:41 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:58:00 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/CerealMiller/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/JackieNeoCEG/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/PureUsagi/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/JackieNeoCEG/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/JackieNeoCEG/ip.git (master) completed! -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/sweijie24/ip.git completed! -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/Praneet-25/ip.git... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator analyzeRepos -INFO: [159/189] Analyzing https://github.com/sweijie24/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/Praneet-25/ip.git to complete... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/PureUsagi/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/PureUsagi/ip.git (master) completed! +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/CerealMiller/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/sweijie24/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:41 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/sweijie24/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/PureUsagi/ip.git (master)... -Feb 09, 2024 2:55:41 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:58:00 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/CerealMiller/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/CerealMiller/ip.git (master) completed! -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/PureUsagi/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/PureUsagi/ip.git (master) completed! -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/sweijie24/ip.git completed! +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/XavierLiau34/ip.git completed! -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/Praneet-25/ip.git... +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepos +INFO: [159/189] Analyzing https://github.com/sweijie24/ip.git (master)... +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator analyzeRepos INFO: [160/189] Analyzing https://github.com/XavierLiau34/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/StargazerX0/ip.git... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/Praneet-25/ip.git to complete... +Feb 09, 2024 8:58:00 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/StargazerX0/ip.git to complete... -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/sweijie24/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:58:00 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/XavierLiau34/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:42 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:58:00 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/XavierLiau34/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/sweijie24/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/sweijie24/ip.git (master) completed! -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/XavierLiau34/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/JustinSoh/ip.git completed! -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepos -INFO: [161/189] Analyzing https://github.com/JustinSoh/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/sweijie24/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:58:01 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/sweijie24/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/damiwee/ip.git completed! +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/Mmaxx15/ip.git... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepos +INFO: [161/189] Analyzing https://github.com/damiwee/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/Mmaxx15/ip.git to complete... -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/XavierLiau34/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/damiwee/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:58:01 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/damiwee/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/XavierLiau34/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/XavierLiau34/ip.git (master) completed! -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/damiwee/ip.git completed! -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepos -INFO: [162/189] Analyzing https://github.com/damiwee/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/sweijie24/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/sweijie24/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/sweijie24/ip.git (master) completed! +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/damiwee/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/damiwee/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/damiwee/ip.git (master) completed! +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/Praneet-25/ip.git completed! +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/StargazerX0/ip.git completed! +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepos +INFO: [162/189] Analyzing https://github.com/Praneet-25/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/JeffinsonDarmawan/ip.git... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/JeffinsonDarmawan/ip.git to complete... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/JustinSoh/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:42 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/JustinSoh/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/damiwee/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:42 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/damiwee/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/Praneet-25/ip.git completed! -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepos -INFO: [163/189] Analyzing https://github.com/Praneet-25/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepos +INFO: [163/189] Analyzing https://github.com/StargazerX0/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/HikoHikoHiko/ip.git... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/HikoHikoHiko/ip.git to complete... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/Praneet-25/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:42 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:58:01 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/Praneet-25/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/JustinSoh/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/JustinSoh/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/JustinSoh/ip.git (master) completed! -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/damiwee/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/Praneet-25/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/damiwee/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/StargazerX0/ip.git completed! -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/damiwee/ip.git (master) completed! -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/Praneet-25/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/Kishen271828/ip.git... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepos -INFO: [164/189] Analyzing https://github.com/StargazerX0/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/Praneet-25/ip.git (master) completed! -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/Kishen271828/ip.git to complete... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/StargazerX0/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:42 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:58:01 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/StargazerX0/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/Mmaxx15/ip.git completed! -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepos -INFO: [165/189] Analyzing https://github.com/Mmaxx15/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepos +INFO: [164/189] Analyzing https://github.com/Mmaxx15/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/Kishen271828/ip.git... +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/Kishen271828/ip.git to complete... +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/Mmaxx15/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:58:01 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/Mmaxx15/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/Praneet-25/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/StargazerX0/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/Praneet-25/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/Praneet-25/ip.git (master) completed! +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/StargazerX0/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/StargazerX0/ip.git (master) completed! +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/Mmaxx15/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/Mmaxx15/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/Mmaxx15/ip.git (master) completed! +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/HikoHikoHiko/ip.git completed! +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepos +INFO: [165/189] Analyzing https://github.com/HikoHikoHiko/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/Joellimjr/ip.git... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/Joellimjr/ip.git to complete... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/JeffinsonDarmawan/ip.git completed! -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/StargazerX0/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/claribelho/ip.git... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepos INFO: [166/189] Analyzing https://github.com/JeffinsonDarmawan/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/Mmaxx15/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:42 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/Mmaxx15/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/claribelho/ip.git to complete... -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/StargazerX0/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/StargazerX0/ip.git (master) completed! -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/HikoHikoHiko/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:58:01 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/HikoHikoHiko/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/JeffinsonDarmawan/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:42 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:58:01 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/JeffinsonDarmawan/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/HikoHikoHiko/ip.git completed! -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/Kishen271828/ip.git completed! +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/rexyyong/ip.git... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepos -INFO: [167/189] Analyzing https://github.com/HikoHikoHiko/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepos +INFO: [167/189] Analyzing https://github.com/Kishen271828/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/rexyyong/ip.git to complete... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/HikoHikoHiko/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:42 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/HikoHikoHiko/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/JeffinsonDarmawan/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/Kishen271828/ip.git completed! -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepos -INFO: [168/189] Analyzing https://github.com/Kishen271828/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/Mmaxx15/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/T0nyLin/ip.git... -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/JeffinsonDarmawan/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/JeffinsonDarmawan/ip.git (master) completed! -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/T0nyLin/ip.git to complete... -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/Mmaxx15/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/Mmaxx15/ip.git (master) completed! -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/Kishen271828/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:42 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:58:01 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/Kishen271828/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/Joellimjr/ip.git completed! -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/liuzehui03/ip.git... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepos -INFO: [169/189] Analyzing https://github.com/Joellimjr/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/claribelho/ip.git completed! -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/JeffinsonDarmawan/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/HikoHikoHiko/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/liuzehui03/ip.git to complete... -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/JeffinsonDarmawan/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/JeffinsonDarmawan/ip.git (master) completed! +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/HikoHikoHiko/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/HikoHikoHiko/ip.git (master) completed! +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/Kishen271828/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepos -INFO: [170/189] Analyzing https://github.com/claribelho/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/IncyBot/ip.git... -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/Kishen271828/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/Kishen271828/ip.git (master) completed! -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/HikoHikoHiko/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/Joellimjr/ip.git completed! +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepos +INFO: [168/189] Analyzing https://github.com/Joellimjr/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/T0nyLin/ip.git... +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/T0nyLin/ip.git to complete... +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/Joellimjr/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:42 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:58:01 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/Joellimjr/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/HikoHikoHiko/ip.git (master) completed! -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/IncyBot/ip.git to complete... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/rexyyong/ip.git completed! -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepos -INFO: [171/189] Analyzing https://github.com/rexyyong/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/SuveenE/ip.git... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/claribelho/ip.git completed! +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepos +INFO: [169/189] Analyzing https://github.com/claribelho/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/liuzehui03/ip.git... +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/liuzehui03/ip.git to complete... +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/claribelho/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:42 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:58:01 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/claribelho/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/SuveenE/ip.git to complete... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/rexyyong/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:42 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/rexyyong/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/Joellimjr/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/rexyyong/ip.git completed! +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/Joellimjr/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/Joellimjr/ip.git (master) completed! -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/T0nyLin/ip.git completed! -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepos -INFO: [172/189] Analyzing https://github.com/T0nyLin/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/nigelheng/ip.git... -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepos +INFO: [170/189] Analyzing https://github.com/rexyyong/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/IncyBot/ip.git... +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/IncyBot/ip.git to complete... +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/rexyyong/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:58:01 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/rexyyong/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/claribelho/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/nigelheng/ip.git to complete... -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/rexyyong/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/T0nyLin/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:42 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/T0nyLin/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/claribelho/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/rexyyong/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/claribelho/ip.git (master) completed! -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/rexyyong/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/rexyyong/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/rexyyong/ip.git (master) completed! -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/T0nyLin/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/T0nyLin/ip.git completed! +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepos +INFO: [171/189] Analyzing https://github.com/T0nyLin/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/SuveenE/ip.git... +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/SuveenE/ip.git to complete... +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/T0nyLin/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:58:01 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/T0nyLin/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/liuzehui03/ip.git completed! -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepos -INFO: [173/189] Analyzing https://github.com/liuzehui03/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/dextboy/ip.git... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/dextboy/ip.git to complete... -Feb 09, 2024 2:55:42 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/T0nyLin/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/T0nyLin/ip.git (master) completed! -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/IncyBot/ip.git completed! -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:58:01 AM reposense.report.ReportGenerator analyzeRepos +INFO: [172/189] Analyzing https://github.com/liuzehui03/ip.git (master)... +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/nigelheng/ip.git... +Feb 09, 2024 8:58:01 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/nigelheng/ip.git to complete... +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/liuzehui03/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:42 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:58:02 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/liuzehui03/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepos -INFO: [174/189] Analyzing https://github.com/IncyBot/ip.git (master)... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/JustinSoh/ip.git completed! +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepos +INFO: [173/189] Analyzing https://github.com/JustinSoh/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/dextboy/ip.git... +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/IncyBot/ip.git completed! +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/lordgareth10/ip.git... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepos +INFO: [174/189] Analyzing https://github.com/IncyBot/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/dextboy/ip.git to complete... +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/T0nyLin/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/lordgareth10/ip.git to complete... -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/SuveenE/ip.git completed! -Feb 09, 2024 2:55:42 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/JingHaoooo/ip.git... -Feb 09, 2024 2:55:42 AM reposense.report.ReportGenerator analyzeRepos -INFO: [175/189] Analyzing https://github.com/SuveenE/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Waiting for cloning of https://github.com/JingHaoooo/ip.git to complete... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/IncyBot/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:43 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:58:02 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/IncyBot/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/SuveenE/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:43 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/SuveenE/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/JustinSoh/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:58:02 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/JustinSoh/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/T0nyLin/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/T0nyLin/ip.git (master) completed! +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/liuzehui03/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/liuzehui03/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/liuzehui03/ip.git (master) completed! -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/IncyBot/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/SuveenE/ip.git completed! +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepos +INFO: [175/189] Analyzing https://github.com/SuveenE/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/JingHaoooo/ip.git... +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/IncyBot/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/IncyBot/ip.git (master) completed! -Feb 09, 2024 2:55:43 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/JustinSoh/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Waiting for cloning of https://github.com/JingHaoooo/ip.git to complete... +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/SuveenE/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:58:02 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/SuveenE/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/JustinSoh/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/JustinSoh/ip.git (master) completed! +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/nigelheng/ip.git completed! -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator analyzeRepos -INFO: [176/189] Analyzing https://github.com/nigelheng/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/SuveenE/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/Dheekshitha2/ip.git... -Feb 09, 2024 2:55:43 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepos +INFO: [176/189] Analyzing https://github.com/nigelheng/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/Dheekshitha2/ip.git to complete... -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/SuveenE/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/dextboy/ip.git completed! +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepos +INFO: [177/189] Analyzing https://github.com/dextboy/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/NGXZS/ip.git... +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/nigelheng/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:43 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:58:02 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/nigelheng/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/SuveenE/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/SuveenE/ip.git (master) completed! -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/nigelheng/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/nigelheng/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/nigelheng/ip.git (master) completed! -Feb 09, 2024 2:55:43 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/dextboy/ip.git completed! -Feb 09, 2024 2:55:43 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/NGXZS/ip.git... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator analyzeRepos -INFO: [177/189] Analyzing https://github.com/dextboy/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/NGXZS/ip.git to complete... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/SuveenE/ip.git (master) completed! +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/lordgareth10/ip.git completed! +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/dextboy/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:43 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:58:02 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/dextboy/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/lordgareth10/ip.git completed! -Feb 09, 2024 2:55:43 AM reposense.report.RepoCloner spawnCloneProcess -INFO: Cloning in parallel from https://github.com/jthibault03/ip.git... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepos INFO: [178/189] Analyzing https://github.com/lordgareth10/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/JingHaoooo/ip.git completed! -Feb 09, 2024 2:55:43 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner spawnCloneProcess +INFO: Cloning in parallel from https://github.com/jthibault03/ip.git... +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/jthibault03/ip.git to complete... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/lordgareth10/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:58:02 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/lordgareth10/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/nigelheng/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/nigelheng/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/nigelheng/ip.git (master) completed! +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/JingHaoooo/ip.git completed! +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepos INFO: [179/189] Analyzing https://github.com/JingHaoooo/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/Haotian199/ip.git... -Feb 09, 2024 2:55:43 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/Haotian199/ip.git to complete... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/lordgareth10/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:43 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/lordgareth10/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/JingHaoooo/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:43 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/JingHaoooo/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/dextboy/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/dextboy/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/dextboy/ip.git (master) completed! -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/JingHaoooo/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:58:02 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/JingHaoooo/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/lordgareth10/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/dextboy/ip.git (master) completed! +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/lordgareth10/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/lordgareth10/ip.git (master) completed! -Feb 09, 2024 2:55:43 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/Dheekshitha2/ip.git completed! -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator analyzeRepos -INFO: [180/189] Analyzing https://github.com/Dheekshitha2/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.RepoCloner spawnCloneProcess +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner spawnCloneProcess INFO: Cloning in parallel from https://github.com/Kobot7/ip.git... -Feb 09, 2024 2:55:43 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepos +INFO: [180/189] Analyzing https://github.com/Dheekshitha2/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner waitForCloneProcess INFO: Waiting for cloning of https://github.com/Kobot7/ip.git to complete... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/Dheekshitha2/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:43 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/Dheekshitha2/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/JingHaoooo/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/JingHaoooo/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/JingHaoooo/ip.git (master) completed! -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/Dheekshitha2/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/NGXZS/ip.git completed! -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/Dheekshitha2/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/Dheekshitha2/ip.git (master) completed! -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepos INFO: [181/189] Analyzing https://github.com/NGXZS/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/JingHaoooo/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/Dheekshitha2/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/JingHaoooo/ip.git (master) completed! +Feb 09, 2024 8:58:02 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/Dheekshitha2/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/NGXZS/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:43 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:58:02 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/NGXZS/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.RepoCloner waitForCloneProcess +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner waitForCloneProcess INFO: Cloning of https://github.com/jthibault03/ip.git completed! -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepos INFO: [182/189] Analyzing https://github.com/jthibault03/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/Haotian199/ip.git completed! -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator analyzeRepos -INFO: [183/189] Analyzing https://github.com/Haotian199/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/Dheekshitha2/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/jthibault03/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:43 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:58:02 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/jthibault03/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator updateRepoConfig -INFO: https://github.com/Haotian199/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:43 AM reposense.authorship.FileInfoExtractor extractTextFileInfos -INFO: Extracting relevant file info from https://github.com/Haotian199/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/Dheekshitha2/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/Dheekshitha2/ip.git (master) completed! +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/NGXZS/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/NGXZS/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/NGXZS/ip.git (master) completed! -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoExtractor extractCommitInfos -INFO: Extracting commits info for https://github.com/Haotian199/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/Haotian199/ip.git completed! +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/jthibault03/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.RepoCloner waitForCloneProcess -INFO: Cloning of https://github.com/Kobot7/ip.git completed! -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoAnalyzer analyzeCommits -INFO: Analyzing commits info for https://github.com/Haotian199/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator analyzeRepo -INFO: Analysis of https://github.com/Haotian199/ip.git (master) completed! -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepos +INFO: [183/189] Analyzing https://github.com/Haotian199/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/jthibault03/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/jthibault03/ip.git (master) completed! -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator analyzeRepos +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator updateRepoConfig +INFO: https://github.com/Haotian199/ip.git (master) does not contain a standalone config file. +Feb 09, 2024 8:58:02 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +INFO: Extracting relevant file info from https://github.com/Haotian199/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.report.RepoCloner waitForCloneProcess +INFO: Cloning of https://github.com/Kobot7/ip.git completed! +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepos INFO: [184/189] Analyzing https://github.com/Kobot7/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator updateRepoConfig +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoExtractor extractCommitInfos +INFO: Extracting commits info for https://github.com/Haotian199/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +INFO: Analyzing commits info for https://github.com/Haotian199/ip.git (master)... +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepo +INFO: Analysis of https://github.com/Haotian199/ip.git (master) completed! +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator updateRepoConfig INFO: https://github.com/Kobot7/ip.git (master) does not contain a standalone config file. -Feb 09, 2024 2:55:43 AM reposense.authorship.FileInfoExtractor extractTextFileInfos +Feb 09, 2024 8:58:02 AM reposense.authorship.FileInfoExtractor extractTextFileInfos INFO: Extracting relevant file info from https://github.com/Kobot7/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoExtractor extractCommitInfos +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoExtractor extractCommitInfos INFO: Extracting commits info for https://github.com/Kobot7/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.commits.CommitInfoAnalyzer analyzeCommits +Feb 09, 2024 8:58:02 AM reposense.commits.CommitInfoAnalyzer analyzeCommits INFO: Analyzing commits info for https://github.com/Kobot7/ip.git (master)... -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator analyzeRepo +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator analyzeRepo INFO: Analysis of https://github.com/Kobot7/ip.git (master) completed! -Feb 09, 2024 2:55:43 AM reposense.report.ReportGenerator generateReposReport +Feb 09, 2024 8:58:02 AM reposense.report.ReportGenerator generateReposReport INFO: The report is generated at /home/runner/work/ip-dashboard/ip-dashboard/reposense-report -Feb 09, 2024 2:55:43 AM reposense.RepoSense main -INFO: Elapsed processing time: 14.98 second(s) +Feb 09, 2024 8:58:03 AM reposense.RepoSense main +INFO: Elapsed processing time: 15.67 second(s) diff --git a/summary.json b/summary.json index fcd2b52c..262e1bac 100644 --- a/summary.json +++ b/summary.json @@ -1 +1 @@ -{"repoSenseVersion":"29903e3124","reportGeneratedTime":"Fri Feb 9 10:55:29 2024 UTC+08:00","reportGenerationTime":" 14.77 second(s)","zoneId":"UTC+08:00","reportTitle":"CS2113 iP Code Dashboard","repos":[{"location":{"location":"https://github.com/V4Vern/ip.git","repoName":"ip","organization":"V4Vern","domainName":"github"},"branch":"master","displayName":"V4Vern/ip[master]","outputFolderName":"V4Vern_ip_master"},{"location":{"location":"https://github.com/Cohii2/ip.git","repoName":"ip","organization":"Cohii2","domainName":"github"},"branch":"master","displayName":"Cohii2/ip[master]","outputFolderName":"Cohii2_ip_master"},{"location":{"location":"https://github.com/yuki-zmstr/ip.git","repoName":"ip","organization":"yuki-zmstr","domainName":"github"},"branch":"master","displayName":"yuki-zmstr/ip[master]","outputFolderName":"yuki-zmstr_ip_master"},{"location":{"location":"https://github.com/RyanTDL/ip.git","repoName":"ip","organization":"RyanTDL","domainName":"github"},"branch":"master","displayName":"RyanTDL/ip[master]","outputFolderName":"RyanTDL_ip_master"},{"location":{"location":"https://github.com/yeozhishen/ip.git","repoName":"ip","organization":"yeozhishen","domainName":"github"},"branch":"master","displayName":"yeozhishen/ip[master]","outputFolderName":"yeozhishen_ip_master"},{"location":{"location":"https://github.com/owx0130/ip.git","repoName":"ip","organization":"owx0130","domainName":"github"},"branch":"master","displayName":"owx0130/ip[master]","outputFolderName":"owx0130_ip_master"},{"location":{"location":"https://github.com/BenjoBurger/ip.git","repoName":"ip","organization":"BenjoBurger","domainName":"github"},"branch":"master","displayName":"BenjoBurger/ip[master]","outputFolderName":"BenjoBurger_ip_master"},{"location":{"location":"https://github.com/genexus85/ip.git","repoName":"ip","organization":"genexus85","domainName":"github"},"branch":"master","displayName":"genexus85/ip[master]","outputFolderName":"genexus85_ip_master"},{"location":{"location":"https://github.com/CerealMiller/ip.git","repoName":"ip","organization":"CerealMiller","domainName":"github"},"branch":"master","displayName":"CerealMiller/ip[master]","outputFolderName":"CerealMiller_ip_master"},{"location":{"location":"https://github.com/HengShuHong/ip.git","repoName":"ip","organization":"HengShuHong","domainName":"github"},"branch":"master","displayName":"HengShuHong/ip[master]","outputFolderName":"HengShuHong_ip_master"},{"location":{"location":"https://github.com/Heart-of-N1/ip.git","repoName":"ip","organization":"Heart-of-N1","domainName":"github"},"branch":"master","displayName":"Heart-of-N1/ip[master]","outputFolderName":"Heart-of-N1_ip_master"},{"location":{"location":"https://github.com/samuelory/ip.git","repoName":"ip","organization":"samuelory","domainName":"github"},"branch":"master","displayName":"samuelory/ip[master]","outputFolderName":"samuelory_ip_master"},{"location":{"location":"https://github.com/LowTL/ip.git","repoName":"ip","organization":"LowTL","domainName":"github"},"branch":"master","displayName":"LowTL/ip[master]","outputFolderName":"LowTL_ip_master"},{"location":{"location":"https://github.com/cyhjason29/ip.git","repoName":"ip","organization":"cyhjason29","domainName":"github"},"branch":"master","displayName":"cyhjason29/ip[master]","outputFolderName":"cyhjason29_ip_master"},{"location":{"location":"https://github.com/Leong-ZM/ip.git","repoName":"ip","organization":"Leong-ZM","domainName":"github"},"branch":"master","displayName":"Leong-ZM/ip[master]","outputFolderName":"Leong-ZM_ip_master"},{"location":{"location":"https://github.com/alvinnnnnnnnnn/ip.git","repoName":"ip","organization":"alvinnnnnnnnnn","domainName":"github"},"branch":"master","displayName":"alvinnnnnnnnnn/ip[master]","outputFolderName":"alvinnnnnnnnnn_ip_master"},{"location":{"location":"https://github.com/jing-xiang/ip.git","repoName":"ip","organization":"jing-xiang","domainName":"github"},"branch":"master","displayName":"jing-xiang/ip[master]","outputFolderName":"jing-xiang_ip_master"},{"location":{"location":"https://github.com/fungg0/ip.git","repoName":"ip","organization":"fungg0","domainName":"github"},"branch":"master","displayName":"fungg0/ip[master]","outputFolderName":"fungg0_ip_master"},{"location":{"location":"https://github.com/webtjs/ip.git","repoName":"ip","organization":"webtjs","domainName":"github"},"branch":"master","displayName":"webtjs/ip[master]","outputFolderName":"webtjs_ip_master"},{"location":{"location":"https://github.com/sxfoo/ip.git","repoName":"ip","organization":"sxfoo","domainName":"github"},"branch":"master","displayName":"sxfoo/ip[master]","outputFolderName":"sxfoo_ip_master"},{"location":{"location":"https://github.com/daryltay415/ip.git","repoName":"ip","organization":"daryltay415","domainName":"github"},"branch":"master","displayName":"daryltay415/ip[master]","outputFolderName":"daryltay415_ip_master"},{"location":{"location":"https://github.com/yuhengr/ip.git","repoName":"ip","organization":"yuhengr","domainName":"github"},"branch":"master","displayName":"yuhengr/ip[master]","outputFolderName":"yuhengr_ip_master"},{"location":{"location":"https://github.com/Joellimjr/ip.git","repoName":"ip","organization":"Joellimjr","domainName":"github"},"branch":"master","displayName":"Joellimjr/ip[master]","outputFolderName":"Joellimjr_ip_master"},{"location":{"location":"https://github.com/ParthGandhiNUS/ip.git","repoName":"ip","organization":"ParthGandhiNUS","domainName":"github"},"branch":"master","displayName":"ParthGandhiNUS/ip[master]","outputFolderName":"ParthGandhiNUS_ip_master"},{"location":{"location":"https://github.com/Fureimi/ip.git","repoName":"ip","organization":"Fureimi","domainName":"github"},"branch":"master","displayName":"Fureimi/ip[master]","outputFolderName":"Fureimi_ip_master"},{"location":{"location":"https://github.com/cirelesna/ip.git","repoName":"ip","organization":"cirelesna","domainName":"github"},"branch":"master","displayName":"cirelesna/ip[master]","outputFolderName":"cirelesna_ip_master"},{"location":{"location":"https://github.com/seandooa/ip.git","repoName":"ip","organization":"seandooa","domainName":"github"},"branch":"master","displayName":"seandooa/ip[master]","outputFolderName":"seandooa_ip_master"},{"location":{"location":"https://github.com/rismm/ip.git","repoName":"ip","organization":"rismm","domainName":"github"},"branch":"master","displayName":"rismm/ip[master]","outputFolderName":"rismm_ip_master"},{"location":{"location":"https://github.com/damiwee/ip.git","repoName":"ip","organization":"damiwee","domainName":"github"},"branch":"master","displayName":"damiwee/ip[master]","outputFolderName":"damiwee_ip_master"},{"location":{"location":"https://github.com/alalal47/ip.git","repoName":"ip","organization":"alalal47","domainName":"github"},"branch":"master","displayName":"alalal47/ip[master]","outputFolderName":"alalal47_ip_master"},{"location":{"location":"https://github.com/awesomesjh/ip.git","repoName":"ip","organization":"awesomesjh","domainName":"github"},"branch":"master","displayName":"awesomesjh/ip[master]","outputFolderName":"awesomesjh_ip_master"},{"location":{"location":"https://github.com/Daviancold/ip.git","repoName":"ip","organization":"Daviancold","domainName":"github"},"branch":"master","displayName":"Daviancold/ip[master]","outputFolderName":"Daviancold_ip_master"},{"location":{"location":"https://github.com/chenhowy/ip.git","repoName":"ip","organization":"chenhowy","domainName":"github"},"branch":"master","displayName":"chenhowy/ip[master]","outputFolderName":"chenhowy_ip_master"},{"location":{"location":"https://github.com/rexyyong/ip.git","repoName":"ip","organization":"rexyyong","domainName":"github"},"branch":"master","displayName":"rexyyong/ip[master]","outputFolderName":"rexyyong_ip_master"},{"location":{"location":"https://github.com/Zhengwinter/ip.git","repoName":"ip","organization":"Zhengwinter","domainName":"github"},"branch":"master","displayName":"Zhengwinter/ip[master]","outputFolderName":"Zhengwinter_ip_master"},{"location":{"location":"https://github.com/Cryolian/ip.git","repoName":"ip","organization":"Cryolian","domainName":"github"},"branch":"master","displayName":"Cryolian/ip[master]","outputFolderName":"Cryolian_ip_master"},{"location":{"location":"https://github.com/paturikarthik/ip.git","repoName":"ip","organization":"paturikarthik","domainName":"github"},"branch":"master","displayName":"paturikarthik/ip[master]","outputFolderName":"paturikarthik_ip_master"},{"location":{"location":"https://github.com/ChinYanXu/ip.git","repoName":"ip","organization":"ChinYanXu","domainName":"github"},"branch":"master","displayName":"ChinYanXu/ip[master]","outputFolderName":"ChinYanXu_ip_master"},{"location":{"location":"https://github.com/dtaywd/ip.git","repoName":"ip","organization":"dtaywd","domainName":"github"},"branch":"master","displayName":"dtaywd/ip[master]","outputFolderName":"dtaywd_ip_master"},{"location":{"location":"https://github.com/wallywallywally/ip.git","repoName":"ip","organization":"wallywallywally","domainName":"github"},"branch":"master","displayName":"wallywallywally/ip[master]","outputFolderName":"wallywallywally_ip_master"},{"location":{"location":"https://github.com/yeozongyao/ip.git","repoName":"ip","organization":"yeozongyao","domainName":"github"},"branch":"master","displayName":"yeozongyao/ip[master]","outputFolderName":"yeozongyao_ip_master"},{"location":{"location":"https://github.com/isaaceng7/ip.git","repoName":"ip","organization":"isaaceng7","domainName":"github"},"branch":"master","displayName":"isaaceng7/ip[master]","outputFolderName":"isaaceng7_ip_master"},{"location":{"location":"https://github.com/NGXZS/ip.git","repoName":"ip","organization":"NGXZS","domainName":"github"},"branch":"master","displayName":"NGXZS/ip[master]","outputFolderName":"NGXZS_ip_master"},{"location":{"location":"https://github.com/sweijie24/ip.git","repoName":"ip","organization":"sweijie24","domainName":"github"},"branch":"master","displayName":"sweijie24/ip[master]","outputFolderName":"sweijie24_ip_master"},{"location":{"location":"https://github.com/itsmejr257/ip.git","repoName":"ip","organization":"itsmejr257","domainName":"github"},"branch":"master","displayName":"itsmejr257/ip[master]","outputFolderName":"itsmejr257_ip_master"},{"location":{"location":"https://github.com/joshualeejunyi/ip.git","repoName":"ip","organization":"joshualeejunyi","domainName":"github"},"branch":"master","displayName":"joshualeejunyi/ip[master]","outputFolderName":"joshualeejunyi_ip_master"},{"location":{"location":"https://github.com/Vavinan/ip.git","repoName":"ip","organization":"Vavinan","domainName":"github"},"branch":"master","displayName":"Vavinan/ip[master]","outputFolderName":"Vavinan_ip_master"},{"location":{"location":"https://github.com/64-1/ip.git","repoName":"ip","organization":"64-1","domainName":"github"},"branch":"master","displayName":"64-1/ip[master]","outputFolderName":"64-1_ip_master"},{"location":{"location":"https://github.com/Xb990219/ip.git","repoName":"ip","organization":"Xb990219","domainName":"github"},"branch":"master","displayName":"Xb990219/ip[master]","outputFolderName":"Xb990219_ip_master"},{"location":{"location":"https://github.com/ThawTunZan/ip.git","repoName":"ip","organization":"ThawTunZan","domainName":"github"},"branch":"master","displayName":"ThawTunZan/ip[master]","outputFolderName":"ThawTunZan_ip_master"},{"location":{"location":"https://github.com/djleong01/ip.git","repoName":"ip","organization":"djleong01","domainName":"github"},"branch":"master","displayName":"djleong01/ip[master]","outputFolderName":"djleong01_ip_master"},{"location":{"location":"https://github.com/MonkeScripts/ip.git","repoName":"ip","organization":"MonkeScripts","domainName":"github"},"branch":"master","displayName":"MonkeScripts/ip[master]","outputFolderName":"MonkeScripts_ip_master"},{"location":{"location":"https://github.com/chenxk619/ip.git","repoName":"ip","organization":"chenxk619","domainName":"github"},"branch":"master","displayName":"chenxk619/ip[master]","outputFolderName":"chenxk619_ip_master"},{"location":{"location":"https://github.com/hwc0419/ip.git","repoName":"ip","organization":"hwc0419","domainName":"github"},"branch":"master","displayName":"hwc0419/ip[master]","outputFolderName":"hwc0419_ip_master"},{"location":{"location":"https://github.com/JackieNeoCEG/ip.git","repoName":"ip","organization":"JackieNeoCEG","domainName":"github"},"branch":"master","displayName":"JackieNeoCEG/ip[master]","outputFolderName":"JackieNeoCEG_ip_master"},{"location":{"location":"https://github.com/Mmaxx15/ip.git","repoName":"ip","organization":"Mmaxx15","domainName":"github"},"branch":"master","displayName":"Mmaxx15/ip[master]","outputFolderName":"Mmaxx15_ip_master"},{"location":{"location":"https://github.com/clarencepohh/ip.git","repoName":"ip","organization":"clarencepohh","domainName":"github"},"branch":"master","displayName":"clarencepohh/ip[master]","outputFolderName":"clarencepohh_ip_master"},{"location":{"location":"https://github.com/NicholasTanYY/ip.git","repoName":"ip","organization":"NicholasTanYY","domainName":"github"},"branch":"master","displayName":"NicholasTanYY/ip[master]","outputFolderName":"NicholasTanYY_ip_master"},{"location":{"location":"https://github.com/HikoHikoHiko/ip.git","repoName":"ip","organization":"HikoHikoHiko","domainName":"github"},"branch":"master","displayName":"HikoHikoHiko/ip[master]","outputFolderName":"HikoHikoHiko_ip_master"},{"location":{"location":"https://github.com/soongensayo/ip.git","repoName":"ip","organization":"soongensayo","domainName":"github"},"branch":"master","displayName":"soongensayo/ip[master]","outputFolderName":"soongensayo_ip_master"},{"location":{"location":"https://github.com/nikhil-2101/ip.git","repoName":"ip","organization":"nikhil-2101","domainName":"github"},"branch":"master","displayName":"nikhil-2101/ip[master]","outputFolderName":"nikhil-2101_ip_master"},{"location":{"location":"https://github.com/Praneet-25/ip.git","repoName":"ip","organization":"Praneet-25","domainName":"github"},"branch":"master","displayName":"Praneet-25/ip[master]","outputFolderName":"Praneet-25_ip_master"},{"location":{"location":"https://github.com/mukund1403/ip.git","repoName":"ip","organization":"mukund1403","domainName":"github"},"branch":"master","displayName":"mukund1403/ip[master]","outputFolderName":"mukund1403_ip_master"},{"location":{"location":"https://github.com/nicknamenic/ip.git","repoName":"ip","organization":"nicknamenic","domainName":"github"},"branch":"master","displayName":"nicknamenic/ip[master]","outputFolderName":"nicknamenic_ip_master"},{"location":{"location":"https://github.com/BryanCastorius/ip.git","repoName":"ip","organization":"BryanCastorius","domainName":"github"},"branch":"master","displayName":"BryanCastorius/ip[master]","outputFolderName":"BryanCastorius_ip_master"},{"location":{"location":"https://github.com/PDHung1104/ip.git","repoName":"ip","organization":"PDHung1104","domainName":"github"},"branch":"master","displayName":"PDHung1104/ip[master]","outputFolderName":"PDHung1104_ip_master"},{"location":{"location":"https://github.com/jasonlienardi/ip.git","repoName":"ip","organization":"jasonlienardi","domainName":"github"},"branch":"master","displayName":"jasonlienardi/ip[master]","outputFolderName":"jasonlienardi_ip_master"},{"location":{"location":"https://github.com/edwardhumi/ip.git","repoName":"ip","organization":"edwardhumi","domainName":"github"},"branch":"master","displayName":"edwardhumi/ip[master]","outputFolderName":"edwardhumi_ip_master"},{"location":{"location":"https://github.com/z-wenqing/ip.git","repoName":"ip","organization":"z-wenqing","domainName":"github"},"branch":"master","displayName":"z-wenqing/ip[master]","outputFolderName":"z-wenqing_ip_master"},{"location":{"location":"https://github.com/Joshuahoky/ip.git","repoName":"ip","organization":"Joshuahoky","domainName":"github"},"branch":"master","displayName":"Joshuahoky/ip[master]","outputFolderName":"Joshuahoky_ip_master"},{"location":{"location":"https://github.com/Dheekshitha2/ip.git","repoName":"ip","organization":"Dheekshitha2","domainName":"github"},"branch":"master","displayName":"Dheekshitha2/ip[master]","outputFolderName":"Dheekshitha2_ip_master"},{"location":{"location":"https://github.com/liuy1103/ip.git","repoName":"ip","organization":"liuy1103","domainName":"github"},"branch":"master","displayName":"liuy1103/ip[master]","outputFolderName":"liuy1103_ip_master"},{"location":{"location":"https://github.com/hongyijie06/ip.git","repoName":"ip","organization":"hongyijie06","domainName":"github"},"branch":"master","displayName":"hongyijie06/ip[master]","outputFolderName":"hongyijie06_ip_master"},{"location":{"location":"https://github.com/liuzehui03/ip.git","repoName":"ip","organization":"liuzehui03","domainName":"github"},"branch":"master","displayName":"liuzehui03/ip[master]","outputFolderName":"liuzehui03_ip_master"},{"location":{"location":"https://github.com/ZhuSijia0711/ip.git","repoName":"ip","organization":"ZhuSijia0711","domainName":"github"},"branch":"master","displayName":"ZhuSijia0711/ip[master]","outputFolderName":"ZhuSijia0711_ip_master"},{"location":{"location":"https://github.com/hafizuddin-a/ip.git","repoName":"ip","organization":"hafizuddin-a","domainName":"github"},"branch":"master","displayName":"hafizuddin-a/ip[master]","outputFolderName":"hafizuddin-a_ip_master"},{"location":{"location":"https://github.com/jasraa/ip.git","repoName":"ip","organization":"jasraa","domainName":"github"},"branch":"master","displayName":"jasraa/ip[master]","outputFolderName":"jasraa_ip_master"},{"location":{"location":"https://github.com/SharlynLui/ip.git","repoName":"ip","organization":"SharlynLui","domainName":"github"},"branch":"master","displayName":"SharlynLui/ip[master]","outputFolderName":"SharlynLui_ip_master"},{"location":{"location":"https://github.com/claribelho/ip.git","repoName":"ip","organization":"claribelho","domainName":"github"},"branch":"master","displayName":"claribelho/ip[master]","outputFolderName":"claribelho_ip_master"},{"location":{"location":"https://github.com/ZMinghuiZ/ip.git","repoName":"ip","organization":"ZMinghuiZ","domainName":"github"},"branch":"master","displayName":"ZMinghuiZ/ip[master]","outputFolderName":"ZMinghuiZ_ip_master"},{"location":{"location":"https://github.com/fxe025/ip.git","repoName":"ip","organization":"fxe025","domainName":"github"},"branch":"master","displayName":"fxe025/ip[master]","outputFolderName":"fxe025_ip_master"},{"location":{"location":"https://github.com/YoengKokLeong/ip.git","repoName":"ip","organization":"YoengKokLeong","domainName":"github"},"branch":"master","displayName":"YoengKokLeong/ip[master]","outputFolderName":"YoengKokLeong_ip_master"},{"location":{"location":"https://github.com/1simjustin/ip.git","repoName":"ip","organization":"1simjustin","domainName":"github"},"branch":"master","displayName":"1simjustin/ip[master]","outputFolderName":"1simjustin_ip_master"},{"location":{"location":"https://github.com/dextboy/ip.git","repoName":"ip","organization":"dextboy","domainName":"github"},"branch":"master","displayName":"dextboy/ip[master]","outputFolderName":"dextboy_ip_master"},{"location":{"location":"https://github.com/ZhangWenyue3325/ip.git","repoName":"ip","organization":"ZhangWenyue3325","domainName":"github"},"branch":"master","displayName":"ZhangWenyue3325/ip[master]","outputFolderName":"ZhangWenyue3325_ip_master"},{"location":{"location":"https://github.com/ZhouJunmin/ip.git","repoName":"ip","organization":"ZhouJunmin","domainName":"github"},"branch":"master","displayName":"ZhouJunmin/ip[master]","outputFolderName":"ZhouJunmin_ip_master"},{"location":{"location":"https://github.com/LuoYu-uwu/ip.git","repoName":"ip","organization":"LuoYu-uwu","domainName":"github"},"branch":"master","displayName":"LuoYu-uwu/ip[master]","outputFolderName":"LuoYu-uwu_ip_master"},{"location":{"location":"https://github.com/FeathersRe/ip.git","repoName":"ip","organization":"FeathersRe","domainName":"github"},"branch":"master","displayName":"FeathersRe/ip[master]","outputFolderName":"FeathersRe_ip_master"},{"location":{"location":"https://github.com/tayponghee/ip.git","repoName":"ip","organization":"tayponghee","domainName":"github"},"branch":"master","displayName":"tayponghee/ip[master]","outputFolderName":"tayponghee_ip_master"},{"location":{"location":"https://github.com/tannerlie/ip.git","repoName":"ip","organization":"tannerlie","domainName":"github"},"branch":"master","displayName":"tannerlie/ip[master]","outputFolderName":"tannerlie_ip_master"},{"location":{"location":"https://github.com/ChenKangg/ip.git","repoName":"ip","organization":"ChenKangg","domainName":"github"},"branch":"master","displayName":"ChenKangg/ip[master]","outputFolderName":"ChenKangg_ip_master"},{"location":{"location":"https://github.com/tiffanyliu0220/ip.git","repoName":"ip","organization":"tiffanyliu0220","domainName":"github"},"branch":"master","displayName":"tiffanyliu0220/ip[master]","outputFolderName":"tiffanyliu0220_ip_master"},{"location":{"location":"https://github.com/IanFH/ip.git","repoName":"ip","organization":"IanFH","domainName":"github"},"branch":"master","displayName":"IanFH/ip[master]","outputFolderName":"IanFH_ip_master"},{"location":{"location":"https://github.com/JianJiaT/ip.git","repoName":"ip","organization":"JianJiaT","domainName":"github"},"branch":"master","displayName":"JianJiaT/ip[master]","outputFolderName":"JianJiaT_ip_master"},{"location":{"location":"https://github.com/Ijaaz01/ip.git","repoName":"ip","organization":"Ijaaz01","domainName":"github"},"branch":"master","displayName":"Ijaaz01/ip[master]","outputFolderName":"Ijaaz01_ip_master"},{"location":{"location":"https://github.com/EugeneChanJiajun/ip.git","repoName":"ip","organization":"EugeneChanJiajun","domainName":"github"},"branch":"master","displayName":"EugeneChanJiajun/ip[master]","outputFolderName":"EugeneChanJiajun_ip_master"},{"location":{"location":"https://github.com/kyhjonathan/ip.git","repoName":"ip","organization":"kyhjonathan","domainName":"github"},"branch":"master","displayName":"kyhjonathan/ip[master]","outputFolderName":"kyhjonathan_ip_master"},{"location":{"location":"https://github.com/Luo-Z-Y/ip.git","repoName":"ip","organization":"Luo-Z-Y","domainName":"github"},"branch":"master","displayName":"Luo-Z-Y/ip[master]","outputFolderName":"Luo-Z-Y_ip_master"},{"location":{"location":"https://github.com/JingHaoooo/ip.git","repoName":"ip","organization":"JingHaoooo","domainName":"github"},"branch":"master","displayName":"JingHaoooo/ip[master]","outputFolderName":"JingHaoooo_ip_master"},{"location":{"location":"https://github.com/blackmirag3/ip.git","repoName":"ip","organization":"blackmirag3","domainName":"github"},"branch":"master","displayName":"blackmirag3/ip[master]","outputFolderName":"blackmirag3_ip_master"},{"location":{"location":"https://github.com/luozihui2003/ip.git","repoName":"ip","organization":"luozihui2003","domainName":"github"},"branch":"master","displayName":"luozihui2003/ip[master]","outputFolderName":"luozihui2003_ip_master"},{"location":{"location":"https://github.com/adamzzq/ip.git","repoName":"ip","organization":"adamzzq","domainName":"github"},"branch":"master","displayName":"adamzzq/ip[master]","outputFolderName":"adamzzq_ip_master"},{"location":{"location":"https://github.com/OKW32/ip.git","repoName":"ip","organization":"OKW32","domainName":"github"},"branch":"master","displayName":"OKW32/ip[master]","outputFolderName":"OKW32_ip_master"},{"location":{"location":"https://github.com/Haotian199/ip.git","repoName":"ip","organization":"Haotian199","domainName":"github"},"branch":"master","displayName":"Haotian199/ip[master]","outputFolderName":"Haotian199_ip_master"},{"location":{"location":"https://github.com/kirangeofran/ip.git","repoName":"ip","organization":"kirangeofran","domainName":"github"},"branch":"master","displayName":"kirangeofran/ip[master]","outputFolderName":"kirangeofran_ip_master"},{"location":{"location":"https://github.com/B1G-SAM/ip.git","repoName":"ip","organization":"B1G-SAM","domainName":"github"},"branch":"master","displayName":"B1G-SAM/ip[master]","outputFolderName":"B1G-SAM_ip_master"},{"location":{"location":"https://github.com/yyangdaa/ip.git","repoName":"ip","organization":"yyangdaa","domainName":"github"},"branch":"master","displayName":"yyangdaa/ip[master]","outputFolderName":"yyangdaa_ip_master"},{"location":{"location":"https://github.com/runxinghuan/ip.git","repoName":"ip","organization":"runxinghuan","domainName":"github"},"branch":"master","displayName":"runxinghuan/ip[master]","outputFolderName":"runxinghuan_ip_master"},{"location":{"location":"https://github.com/nigelheng/ip.git","repoName":"ip","organization":"nigelheng","domainName":"github"},"branch":"master","displayName":"nigelheng/ip[master]","outputFolderName":"nigelheng_ip_master"},{"location":{"location":"https://github.com/cayennegoh/ip.git","repoName":"ip","organization":"cayennegoh","domainName":"github"},"branch":"master","displayName":"cayennegoh/ip[master]","outputFolderName":"cayennegoh_ip_master"},{"location":{"location":"https://github.com/lordgareth10/ip.git","repoName":"ip","organization":"lordgareth10","domainName":"github"},"branch":"master","displayName":"lordgareth10/ip[master]","outputFolderName":"lordgareth10_ip_master"},{"location":{"location":"https://github.com/vimalapugazhan/ip.git","repoName":"ip","organization":"vimalapugazhan","domainName":"github"},"branch":"master","displayName":"vimalapugazhan/ip[master]","outputFolderName":"vimalapugazhan_ip_master"},{"location":{"location":"https://github.com/shawnpong/ip.git","repoName":"ip","organization":"shawnpong","domainName":"github"},"branch":"master","displayName":"shawnpong/ip[master]","outputFolderName":"shawnpong_ip_master"},{"location":{"location":"https://github.com/TimothyLKM/ip.git","repoName":"ip","organization":"TimothyLKM","domainName":"github"},"branch":"master","displayName":"TimothyLKM/ip[master]","outputFolderName":"TimothyLKM_ip_master"},{"location":{"location":"https://github.com/JeffinsonDarmawan/ip.git","repoName":"ip","organization":"JeffinsonDarmawan","domainName":"github"},"branch":"master","displayName":"JeffinsonDarmawan/ip[master]","outputFolderName":"JeffinsonDarmawan_ip_master"},{"location":{"location":"https://github.com/iscyng/ip.git","repoName":"ip","organization":"iscyng","domainName":"github"},"branch":"master","displayName":"iscyng/ip[master]","outputFolderName":"iscyng_ip_master"},{"location":{"location":"https://github.com/Hws2209/ip.git","repoName":"ip","organization":"Hws2209","domainName":"github"},"branch":"master","displayName":"Hws2209/ip[master]","outputFolderName":"Hws2209_ip_master"},{"location":{"location":"https://github.com/nyh3/ip.git","repoName":"ip","organization":"nyh3","domainName":"github"},"branch":"master","displayName":"nyh3/ip[master]","outputFolderName":"nyh3_ip_master"},{"location":{"location":"https://github.com/anneleong/ip.git","repoName":"ip","organization":"anneleong","domainName":"github"},"branch":"master","displayName":"anneleong/ip[master]","outputFolderName":"anneleong_ip_master"},{"location":{"location":"https://github.com/CXIA17/ip.git","repoName":"ip","organization":"CXIA17","domainName":"github"},"branch":"master","displayName":"CXIA17/ip[master]","outputFolderName":"CXIA17_ip_master"},{"location":{"location":"https://github.com/AhmedShaiyan/ip.git","repoName":"ip","organization":"AhmedShaiyan","domainName":"github"},"branch":"master","displayName":"AhmedShaiyan/ip[master]","outputFolderName":"AhmedShaiyan_ip_master"},{"location":{"location":"https://github.com/pradeep-cod/ip.git","repoName":"ip","organization":"pradeep-cod","domainName":"github"},"branch":"master","displayName":"pradeep-cod/ip[master]","outputFolderName":"pradeep-cod_ip_master"},{"location":{"location":"https://github.com/STeng618/ip.git","repoName":"ip","organization":"STeng618","domainName":"github"},"branch":"master","displayName":"STeng618/ip[master]","outputFolderName":"STeng618_ip_master"},{"location":{"location":"https://github.com/HiteshriAcharya/ip.git","repoName":"ip","organization":"HiteshriAcharya","domainName":"github"},"branch":"master","displayName":"HiteshriAcharya/ip[master]","outputFolderName":"HiteshriAcharya_ip_master"},{"location":{"location":"https://github.com/avrilgk/ip.git","repoName":"ip","organization":"avrilgk","domainName":"github"},"branch":"master","displayName":"avrilgk/ip[master]","outputFolderName":"avrilgk_ip_master"},{"location":{"location":"https://github.com/IncyBot/ip.git","repoName":"ip","organization":"IncyBot","domainName":"github"},"branch":"master","displayName":"IncyBot/ip[master]","outputFolderName":"IncyBot_ip_master"},{"location":{"location":"https://github.com/ymirmeddeb/ip.git","repoName":"ip","organization":"ymirmeddeb","domainName":"github"},"branch":"master","displayName":"ymirmeddeb/ip[master]","outputFolderName":"ymirmeddeb_ip_master"},{"location":{"location":"https://github.com/Aak242/ip.git","repoName":"ip","organization":"Aak242","domainName":"github"},"branch":"master","displayName":"Aak242/ip[master]","outputFolderName":"Aak242_ip_master"},{"location":{"location":"https://github.com/aaravrawal52/ip.git","repoName":"ip","organization":"aaravrawal52","domainName":"github"},"branch":"master","displayName":"aaravrawal52/ip[master]","outputFolderName":"aaravrawal52_ip_master"},{"location":{"location":"https://github.com/ChongXern/ip.git","repoName":"ip","organization":"ChongXern","domainName":"github"},"branch":"master","displayName":"ChongXern/ip[master]","outputFolderName":"ChongXern_ip_master"},{"location":{"location":"https://github.com/Jamarcus111/ip.git","repoName":"ip","organization":"Jamarcus111","domainName":"github"},"branch":"master","displayName":"Jamarcus111/ip[master]","outputFolderName":"Jamarcus111_ip_master"},{"location":{"location":"https://github.com/BestDownLoader365/ip.git","repoName":"ip","organization":"BestDownLoader365","domainName":"github"},"branch":"master","displayName":"BestDownLoader365/ip[master]","outputFolderName":"BestDownLoader365_ip_master"},{"location":{"location":"https://github.com/ShyamKrishna33/ip.git","repoName":"ip","organization":"ShyamKrishna33","domainName":"github"},"branch":"master","displayName":"ShyamKrishna33/ip[master]","outputFolderName":"ShyamKrishna33_ip_master"},{"location":{"location":"https://github.com/StargazerX0/ip.git","repoName":"ip","organization":"StargazerX0","domainName":"github"},"branch":"master","displayName":"StargazerX0/ip[master]","outputFolderName":"StargazerX0_ip_master"},{"location":{"location":"https://github.com/eliztan/ip.git","repoName":"ip","organization":"eliztan","domainName":"github"},"branch":"master","displayName":"eliztan/ip[master]","outputFolderName":"eliztan_ip_master"},{"location":{"location":"https://github.com/SuveenE/ip.git","repoName":"ip","organization":"SuveenE","domainName":"github"},"branch":"master","displayName":"SuveenE/ip[master]","outputFolderName":"SuveenE_ip_master"},{"location":{"location":"https://github.com/Mahesh1772/ip.git","repoName":"ip","organization":"Mahesh1772","domainName":"github"},"branch":"master","displayName":"Mahesh1772/ip[master]","outputFolderName":"Mahesh1772_ip_master"},{"location":{"location":"https://github.com/Elyovs/ip.git","repoName":"ip","organization":"Elyovs","domainName":"github"},"branch":"master","displayName":"Elyovs/ip[master]","outputFolderName":"Elyovs_ip_master"},{"location":{"location":"https://github.com/vibes-863/ip.git","repoName":"ip","organization":"vibes-863","domainName":"github"},"branch":"master","displayName":"vibes-863/ip[master]","outputFolderName":"vibes-863_ip_master"},{"location":{"location":"https://github.com/Kishen271828/ip.git","repoName":"ip","organization":"Kishen271828","domainName":"github"},"branch":"master","displayName":"Kishen271828/ip[master]","outputFolderName":"Kishen271828_ip_master"},{"location":{"location":"https://github.com/pqienso/ip.git","repoName":"ip","organization":"pqienso","domainName":"github"},"branch":"master","displayName":"pqienso/ip[master]","outputFolderName":"pqienso_ip_master"},{"location":{"location":"https://github.com/LWachtel1/ip.git","repoName":"ip","organization":"LWachtel1","domainName":"github"},"branch":"master","displayName":"LWachtel1/ip[master]","outputFolderName":"LWachtel1_ip_master"},{"location":{"location":"https://github.com/azamanis/ip.git","repoName":"ip","organization":"azamanis","domainName":"github"},"branch":"master","displayName":"azamanis/ip[master]","outputFolderName":"azamanis_ip_master"},{"location":{"location":"https://github.com/john-nng/ip.git","repoName":"ip","organization":"john-nng","domainName":"github"},"branch":"master","displayName":"john-nng/ip[master]","outputFolderName":"john-nng_ip_master"},{"location":{"location":"https://github.com/songyuew/ip.git","repoName":"ip","organization":"songyuew","domainName":"github"},"branch":"master","displayName":"songyuew/ip[master]","outputFolderName":"songyuew_ip_master"},{"location":{"location":"https://github.com/Celineyaa/ip.git","repoName":"ip","organization":"Celineyaa","domainName":"github"},"branch":"master","displayName":"Celineyaa/ip[master]","outputFolderName":"Celineyaa_ip_master"},{"location":{"location":"https://github.com/yzhanglp/ip.git","repoName":"ip","organization":"yzhanglp","domainName":"github"},"branch":"master","displayName":"yzhanglp/ip[master]","outputFolderName":"yzhanglp_ip_master"},{"location":{"location":"https://github.com/HenryGan138/ip.git","repoName":"ip","organization":"HenryGan138","domainName":"github"},"branch":"master","displayName":"HenryGan138/ip[master]","outputFolderName":"HenryGan138_ip_master"},{"location":{"location":"https://github.com/ningsongshen/ip.git","repoName":"ip","organization":"ningsongshen","domainName":"github"},"branch":"master","displayName":"ningsongshen/ip[master]","outputFolderName":"ningsongshen_ip_master"},{"location":{"location":"https://github.com/jensonjenkins/ip.git","repoName":"ip","organization":"jensonjenkins","domainName":"github"},"branch":"master","displayName":"jensonjenkins/ip[master]","outputFolderName":"jensonjenkins_ip_master"},{"location":{"location":"https://github.com/ttasnim5/ip.git","repoName":"ip","organization":"ttasnim5","domainName":"github"},"branch":"master","displayName":"ttasnim5/ip[master]","outputFolderName":"ttasnim5_ip_master"},{"location":{"location":"https://github.com/mihirheda02/ip.git","repoName":"ip","organization":"mihirheda02","domainName":"github"},"branch":"master","displayName":"mihirheda02/ip[master]","outputFolderName":"mihirheda02_ip_master"},{"location":{"location":"https://github.com/nidhi-nayak/ip.git","repoName":"ip","organization":"nidhi-nayak","domainName":"github"},"branch":"master","displayName":"nidhi-nayak/ip[master]","outputFolderName":"nidhi-nayak_ip_master"},{"location":{"location":"https://github.com/jthibault03/ip.git","repoName":"ip","organization":"jthibault03","domainName":"github"},"branch":"master","displayName":"jthibault03/ip[master]","outputFolderName":"jthibault03_ip_master"},{"location":{"location":"https://github.com/tinaliu27/ip.git","repoName":"ip","organization":"tinaliu27","domainName":"github"},"branch":"master","displayName":"tinaliu27/ip[master]","outputFolderName":"tinaliu27_ip_master"},{"location":{"location":"https://github.com/a-wild-chocolate/ip.git","repoName":"ip","organization":"a-wild-chocolate","domainName":"github"},"branch":"master","displayName":"a-wild-chocolate/ip[master]","outputFolderName":"a-wild-chocolate_ip_master"},{"location":{"location":"https://github.com/annnniexu/ip.git","repoName":"ip","organization":"annnniexu","domainName":"github"},"branch":"master","displayName":"annnniexu/ip[master]","outputFolderName":"annnniexu_ip_master"},{"location":{"location":"https://github.com/Andy123qq4/ip.git","repoName":"ip","organization":"Andy123qq4","domainName":"github"},"branch":"master","displayName":"Andy123qq4/ip[master]","outputFolderName":"Andy123qq4_ip_master"},{"location":{"location":"https://github.com/Geinzit/ip.git","repoName":"ip","organization":"Geinzit","domainName":"github"},"branch":"master","displayName":"Geinzit/ip[master]","outputFolderName":"Geinzit_ip_master"},{"location":{"location":"https://github.com/classskipper351/ip.git","repoName":"ip","organization":"classskipper351","domainName":"github"},"branch":"master","displayName":"classskipper351/ip[master]","outputFolderName":"classskipper351_ip_master"},{"location":{"location":"https://github.com/raajamani/ip.git","repoName":"ip","organization":"raajamani","domainName":"github"},"branch":"master","displayName":"raajamani/ip[master]","outputFolderName":"raajamani_ip_master"},{"location":{"location":"https://github.com/YHWong20/ip.git","repoName":"ip","organization":"YHWong20","domainName":"github"},"branch":"master","displayName":"YHWong20/ip[master]","outputFolderName":"YHWong20_ip_master"},{"location":{"location":"https://github.com/syj02/ip.git","repoName":"ip","organization":"syj02","domainName":"github"},"branch":"master","displayName":"syj02/ip[master]","outputFolderName":"syj02_ip_master"},{"location":{"location":"https://github.com/T0nyLin/ip.git","repoName":"ip","organization":"T0nyLin","domainName":"github"},"branch":"master","displayName":"T0nyLin/ip[master]","outputFolderName":"T0nyLin_ip_master"},{"location":{"location":"https://github.com/XavierLiau34/ip.git","repoName":"ip","organization":"XavierLiau34","domainName":"github"},"branch":"master","displayName":"XavierLiau34/ip[master]","outputFolderName":"XavierLiau34_ip_master"},{"location":{"location":"https://github.com/cheeseong2001/ip.git","repoName":"ip","organization":"cheeseong2001","domainName":"github"},"branch":"master","displayName":"cheeseong2001/ip[master]","outputFolderName":"cheeseong2001_ip_master"},{"location":{"location":"https://github.com/rouvinerh/ip.git","repoName":"ip","organization":"rouvinerh","domainName":"github"},"branch":"master","displayName":"rouvinerh/ip[master]","outputFolderName":"rouvinerh_ip_master"},{"location":{"location":"https://github.com/NgYaoDong/ip.git","repoName":"ip","organization":"NgYaoDong","domainName":"github"},"branch":"master","displayName":"NgYaoDong/ip[master]","outputFolderName":"NgYaoDong_ip_master"},{"location":{"location":"https://github.com/nur-haziq/ip.git","repoName":"ip","organization":"nur-haziq","domainName":"github"},"branch":"master","displayName":"nur-haziq/ip[master]","outputFolderName":"nur-haziq_ip_master"},{"location":{"location":"https://github.com/nkotaa/ip.git","repoName":"ip","organization":"nkotaa","domainName":"github"},"branch":"master","displayName":"nkotaa/ip[master]","outputFolderName":"nkotaa_ip_master"},{"location":{"location":"https://github.com/wenenhoe/ip.git","repoName":"ip","organization":"wenenhoe","domainName":"github"},"branch":"master","displayName":"wenenhoe/ip[master]","outputFolderName":"wenenhoe_ip_master"},{"location":{"location":"https://github.com/wjunjie01/ip.git","repoName":"ip","organization":"wjunjie01","domainName":"github"},"branch":"master","displayName":"wjunjie01/ip[master]","outputFolderName":"wjunjie01_ip_master"},{"location":{"location":"https://github.com/L5-Z/ip.git","repoName":"ip","organization":"L5-Z","domainName":"github"},"branch":"master","displayName":"L5-Z/ip[master]","outputFolderName":"L5-Z_ip_master"},{"location":{"location":"https://github.com/annoy-o-mus/ip.git","repoName":"ip","organization":"annoy-o-mus","domainName":"github"},"branch":"master","displayName":"annoy-o-mus/ip[master]","outputFolderName":"annoy-o-mus_ip_master"},{"location":{"location":"https://github.com/nickczh/ip.git","repoName":"ip","organization":"nickczh","domainName":"github"},"branch":"master","displayName":"nickczh/ip[master]","outputFolderName":"nickczh_ip_master"},{"location":{"location":"https://github.com/e0958902/ip.git","repoName":"ip","organization":"e0958902","domainName":"github"},"branch":"master","displayName":"e0958902/ip[master]","outputFolderName":"e0958902_ip_master"},{"location":{"location":"https://github.com/JustinSoh/ip.git","repoName":"ip","organization":"JustinSoh","domainName":"github"},"branch":"master","displayName":"JustinSoh/ip[master]","outputFolderName":"JustinSoh_ip_master"},{"location":{"location":"https://github.com/PureUsagi/ip.git","repoName":"ip","organization":"PureUsagi","domainName":"github"},"branch":"master","displayName":"PureUsagi/ip[master]","outputFolderName":"PureUsagi_ip_master"},{"location":{"location":"https://github.com/Kobot7/ip.git","repoName":"ip","organization":"Kobot7","domainName":"github"},"branch":"master","displayName":"Kobot7/ip[master]","outputFolderName":"Kobot7_ip_master"},{"location":{"location":"https://github.com/EdmundTangg/ip.git","repoName":"ip","organization":"EdmundTangg","domainName":"github"},"branch":"master","displayName":"EdmundTangg/ip[master]","outputFolderName":"EdmundTangg_ip_master"},{"location":{"location":"https://github.com/kyuichyi/ip.git","repoName":"ip","organization":"kyuichyi","domainName":"github"},"branch":"master","displayName":"kyuichyi/ip[master]","outputFolderName":"kyuichyi_ip_master"},{"location":{"location":"https://github.com/imanamirshah/ip.git","repoName":"ip","organization":"imanamirshah","domainName":"github"},"branch":"master","displayName":"imanamirshah/ip[master]","outputFolderName":"imanamirshah_ip_master"},{"location":{"location":"https://github.com/j013n3/ip.git","repoName":"ip","organization":"j013n3","domainName":"github"},"branch":"master","displayName":"j013n3/ip[master]","outputFolderName":"j013n3_ip_master"},{"location":{"location":"https://github.com/leongxingyu/ip.git","repoName":"ip","organization":"leongxingyu","domainName":"github"},"branch":"master","displayName":"leongxingyu/ip[master]","outputFolderName":"leongxingyu_ip_master"}],"errorSet":[{"repoName":"dylansiew/ip[master]","errorMessage":"Failed to clone from https://github.com/dylansiew/ip.git"},{"repoName":"hailey-jung/ip[master]","errorMessage":"Failed to clone from https://github.com/hailey-jung/ip.git"},{"repoName":"MayFairMI6/ip[master]","errorMessage":"Failed to clone from https://github.com/MayFairMI6/ip.git"},{"repoName":"haowern98/ip[master]","errorMessage":"Failed to clone from https://github.com/haowern98/ip.git"},{"repoName":"SemiColonKen/ip[master]","errorMessage":"Failed to clone from https://github.com/SemiColonKen/ip.git"}],"sinceDate":"2024-01-19","untilDate":"2024-02-09","isSinceDateProvided":true,"isUntilDateProvided":false,"supportedDomainUrlMap":{"NOT_RECOGNIZED":{"BRANCH":"","REPO_URL":"UNSUPPORTED","BASE_URL":"UNSUPPORTED","HISTORY_PATH":"","COMMIT_PATH":"","BLAME_PATH":""},"github":{"BRANCH":"tree/$BRANCH","REPO_URL":"https://github.com/$ORGANIZATION/$REPO_NAME/","BASE_URL":"https://github.com/","HISTORY_PATH":"commits/$BRANCH/$FILE_PATH","COMMIT_PATH":"commit/$COMMIT_HASH","BLAME_PATH":"blame/$BRANCH/$FILE_PATH"}}} +{"repoSenseVersion":"29903e3124","reportGeneratedTime":"Fri Feb 9 16:57:48 2024 UTC+08:00","reportGenerationTime":" 15.45 second(s)","zoneId":"UTC+08:00","reportTitle":"CS2113 iP Code Dashboard","repos":[{"location":{"location":"https://github.com/V4Vern/ip.git","repoName":"ip","organization":"V4Vern","domainName":"github"},"branch":"master","displayName":"V4Vern/ip[master]","outputFolderName":"V4Vern_ip_master"},{"location":{"location":"https://github.com/Cohii2/ip.git","repoName":"ip","organization":"Cohii2","domainName":"github"},"branch":"master","displayName":"Cohii2/ip[master]","outputFolderName":"Cohii2_ip_master"},{"location":{"location":"https://github.com/yuki-zmstr/ip.git","repoName":"ip","organization":"yuki-zmstr","domainName":"github"},"branch":"master","displayName":"yuki-zmstr/ip[master]","outputFolderName":"yuki-zmstr_ip_master"},{"location":{"location":"https://github.com/RyanTDL/ip.git","repoName":"ip","organization":"RyanTDL","domainName":"github"},"branch":"master","displayName":"RyanTDL/ip[master]","outputFolderName":"RyanTDL_ip_master"},{"location":{"location":"https://github.com/yeozhishen/ip.git","repoName":"ip","organization":"yeozhishen","domainName":"github"},"branch":"master","displayName":"yeozhishen/ip[master]","outputFolderName":"yeozhishen_ip_master"},{"location":{"location":"https://github.com/owx0130/ip.git","repoName":"ip","organization":"owx0130","domainName":"github"},"branch":"master","displayName":"owx0130/ip[master]","outputFolderName":"owx0130_ip_master"},{"location":{"location":"https://github.com/BenjoBurger/ip.git","repoName":"ip","organization":"BenjoBurger","domainName":"github"},"branch":"master","displayName":"BenjoBurger/ip[master]","outputFolderName":"BenjoBurger_ip_master"},{"location":{"location":"https://github.com/genexus85/ip.git","repoName":"ip","organization":"genexus85","domainName":"github"},"branch":"master","displayName":"genexus85/ip[master]","outputFolderName":"genexus85_ip_master"},{"location":{"location":"https://github.com/CerealMiller/ip.git","repoName":"ip","organization":"CerealMiller","domainName":"github"},"branch":"master","displayName":"CerealMiller/ip[master]","outputFolderName":"CerealMiller_ip_master"},{"location":{"location":"https://github.com/HengShuHong/ip.git","repoName":"ip","organization":"HengShuHong","domainName":"github"},"branch":"master","displayName":"HengShuHong/ip[master]","outputFolderName":"HengShuHong_ip_master"},{"location":{"location":"https://github.com/Heart-of-N1/ip.git","repoName":"ip","organization":"Heart-of-N1","domainName":"github"},"branch":"master","displayName":"Heart-of-N1/ip[master]","outputFolderName":"Heart-of-N1_ip_master"},{"location":{"location":"https://github.com/samuelory/ip.git","repoName":"ip","organization":"samuelory","domainName":"github"},"branch":"master","displayName":"samuelory/ip[master]","outputFolderName":"samuelory_ip_master"},{"location":{"location":"https://github.com/LowTL/ip.git","repoName":"ip","organization":"LowTL","domainName":"github"},"branch":"master","displayName":"LowTL/ip[master]","outputFolderName":"LowTL_ip_master"},{"location":{"location":"https://github.com/cyhjason29/ip.git","repoName":"ip","organization":"cyhjason29","domainName":"github"},"branch":"master","displayName":"cyhjason29/ip[master]","outputFolderName":"cyhjason29_ip_master"},{"location":{"location":"https://github.com/Leong-ZM/ip.git","repoName":"ip","organization":"Leong-ZM","domainName":"github"},"branch":"master","displayName":"Leong-ZM/ip[master]","outputFolderName":"Leong-ZM_ip_master"},{"location":{"location":"https://github.com/alvinnnnnnnnnn/ip.git","repoName":"ip","organization":"alvinnnnnnnnnn","domainName":"github"},"branch":"master","displayName":"alvinnnnnnnnnn/ip[master]","outputFolderName":"alvinnnnnnnnnn_ip_master"},{"location":{"location":"https://github.com/jing-xiang/ip.git","repoName":"ip","organization":"jing-xiang","domainName":"github"},"branch":"master","displayName":"jing-xiang/ip[master]","outputFolderName":"jing-xiang_ip_master"},{"location":{"location":"https://github.com/fungg0/ip.git","repoName":"ip","organization":"fungg0","domainName":"github"},"branch":"master","displayName":"fungg0/ip[master]","outputFolderName":"fungg0_ip_master"},{"location":{"location":"https://github.com/webtjs/ip.git","repoName":"ip","organization":"webtjs","domainName":"github"},"branch":"master","displayName":"webtjs/ip[master]","outputFolderName":"webtjs_ip_master"},{"location":{"location":"https://github.com/sxfoo/ip.git","repoName":"ip","organization":"sxfoo","domainName":"github"},"branch":"master","displayName":"sxfoo/ip[master]","outputFolderName":"sxfoo_ip_master"},{"location":{"location":"https://github.com/daryltay415/ip.git","repoName":"ip","organization":"daryltay415","domainName":"github"},"branch":"master","displayName":"daryltay415/ip[master]","outputFolderName":"daryltay415_ip_master"},{"location":{"location":"https://github.com/yuhengr/ip.git","repoName":"ip","organization":"yuhengr","domainName":"github"},"branch":"master","displayName":"yuhengr/ip[master]","outputFolderName":"yuhengr_ip_master"},{"location":{"location":"https://github.com/Joellimjr/ip.git","repoName":"ip","organization":"Joellimjr","domainName":"github"},"branch":"master","displayName":"Joellimjr/ip[master]","outputFolderName":"Joellimjr_ip_master"},{"location":{"location":"https://github.com/ParthGandhiNUS/ip.git","repoName":"ip","organization":"ParthGandhiNUS","domainName":"github"},"branch":"master","displayName":"ParthGandhiNUS/ip[master]","outputFolderName":"ParthGandhiNUS_ip_master"},{"location":{"location":"https://github.com/Fureimi/ip.git","repoName":"ip","organization":"Fureimi","domainName":"github"},"branch":"master","displayName":"Fureimi/ip[master]","outputFolderName":"Fureimi_ip_master"},{"location":{"location":"https://github.com/cirelesna/ip.git","repoName":"ip","organization":"cirelesna","domainName":"github"},"branch":"master","displayName":"cirelesna/ip[master]","outputFolderName":"cirelesna_ip_master"},{"location":{"location":"https://github.com/seandooa/ip.git","repoName":"ip","organization":"seandooa","domainName":"github"},"branch":"master","displayName":"seandooa/ip[master]","outputFolderName":"seandooa_ip_master"},{"location":{"location":"https://github.com/rismm/ip.git","repoName":"ip","organization":"rismm","domainName":"github"},"branch":"master","displayName":"rismm/ip[master]","outputFolderName":"rismm_ip_master"},{"location":{"location":"https://github.com/damiwee/ip.git","repoName":"ip","organization":"damiwee","domainName":"github"},"branch":"master","displayName":"damiwee/ip[master]","outputFolderName":"damiwee_ip_master"},{"location":{"location":"https://github.com/alalal47/ip.git","repoName":"ip","organization":"alalal47","domainName":"github"},"branch":"master","displayName":"alalal47/ip[master]","outputFolderName":"alalal47_ip_master"},{"location":{"location":"https://github.com/awesomesjh/ip.git","repoName":"ip","organization":"awesomesjh","domainName":"github"},"branch":"master","displayName":"awesomesjh/ip[master]","outputFolderName":"awesomesjh_ip_master"},{"location":{"location":"https://github.com/Daviancold/ip.git","repoName":"ip","organization":"Daviancold","domainName":"github"},"branch":"master","displayName":"Daviancold/ip[master]","outputFolderName":"Daviancold_ip_master"},{"location":{"location":"https://github.com/chenhowy/ip.git","repoName":"ip","organization":"chenhowy","domainName":"github"},"branch":"master","displayName":"chenhowy/ip[master]","outputFolderName":"chenhowy_ip_master"},{"location":{"location":"https://github.com/rexyyong/ip.git","repoName":"ip","organization":"rexyyong","domainName":"github"},"branch":"master","displayName":"rexyyong/ip[master]","outputFolderName":"rexyyong_ip_master"},{"location":{"location":"https://github.com/Zhengwinter/ip.git","repoName":"ip","organization":"Zhengwinter","domainName":"github"},"branch":"master","displayName":"Zhengwinter/ip[master]","outputFolderName":"Zhengwinter_ip_master"},{"location":{"location":"https://github.com/Cryolian/ip.git","repoName":"ip","organization":"Cryolian","domainName":"github"},"branch":"master","displayName":"Cryolian/ip[master]","outputFolderName":"Cryolian_ip_master"},{"location":{"location":"https://github.com/paturikarthik/ip.git","repoName":"ip","organization":"paturikarthik","domainName":"github"},"branch":"master","displayName":"paturikarthik/ip[master]","outputFolderName":"paturikarthik_ip_master"},{"location":{"location":"https://github.com/ChinYanXu/ip.git","repoName":"ip","organization":"ChinYanXu","domainName":"github"},"branch":"master","displayName":"ChinYanXu/ip[master]","outputFolderName":"ChinYanXu_ip_master"},{"location":{"location":"https://github.com/dtaywd/ip.git","repoName":"ip","organization":"dtaywd","domainName":"github"},"branch":"master","displayName":"dtaywd/ip[master]","outputFolderName":"dtaywd_ip_master"},{"location":{"location":"https://github.com/wallywallywally/ip.git","repoName":"ip","organization":"wallywallywally","domainName":"github"},"branch":"master","displayName":"wallywallywally/ip[master]","outputFolderName":"wallywallywally_ip_master"},{"location":{"location":"https://github.com/yeozongyao/ip.git","repoName":"ip","organization":"yeozongyao","domainName":"github"},"branch":"master","displayName":"yeozongyao/ip[master]","outputFolderName":"yeozongyao_ip_master"},{"location":{"location":"https://github.com/isaaceng7/ip.git","repoName":"ip","organization":"isaaceng7","domainName":"github"},"branch":"master","displayName":"isaaceng7/ip[master]","outputFolderName":"isaaceng7_ip_master"},{"location":{"location":"https://github.com/NGXZS/ip.git","repoName":"ip","organization":"NGXZS","domainName":"github"},"branch":"master","displayName":"NGXZS/ip[master]","outputFolderName":"NGXZS_ip_master"},{"location":{"location":"https://github.com/sweijie24/ip.git","repoName":"ip","organization":"sweijie24","domainName":"github"},"branch":"master","displayName":"sweijie24/ip[master]","outputFolderName":"sweijie24_ip_master"},{"location":{"location":"https://github.com/itsmejr257/ip.git","repoName":"ip","organization":"itsmejr257","domainName":"github"},"branch":"master","displayName":"itsmejr257/ip[master]","outputFolderName":"itsmejr257_ip_master"},{"location":{"location":"https://github.com/joshualeejunyi/ip.git","repoName":"ip","organization":"joshualeejunyi","domainName":"github"},"branch":"master","displayName":"joshualeejunyi/ip[master]","outputFolderName":"joshualeejunyi_ip_master"},{"location":{"location":"https://github.com/Vavinan/ip.git","repoName":"ip","organization":"Vavinan","domainName":"github"},"branch":"master","displayName":"Vavinan/ip[master]","outputFolderName":"Vavinan_ip_master"},{"location":{"location":"https://github.com/64-1/ip.git","repoName":"ip","organization":"64-1","domainName":"github"},"branch":"master","displayName":"64-1/ip[master]","outputFolderName":"64-1_ip_master"},{"location":{"location":"https://github.com/Xb990219/ip.git","repoName":"ip","organization":"Xb990219","domainName":"github"},"branch":"master","displayName":"Xb990219/ip[master]","outputFolderName":"Xb990219_ip_master"},{"location":{"location":"https://github.com/ThawTunZan/ip.git","repoName":"ip","organization":"ThawTunZan","domainName":"github"},"branch":"master","displayName":"ThawTunZan/ip[master]","outputFolderName":"ThawTunZan_ip_master"},{"location":{"location":"https://github.com/djleong01/ip.git","repoName":"ip","organization":"djleong01","domainName":"github"},"branch":"master","displayName":"djleong01/ip[master]","outputFolderName":"djleong01_ip_master"},{"location":{"location":"https://github.com/MonkeScripts/ip.git","repoName":"ip","organization":"MonkeScripts","domainName":"github"},"branch":"master","displayName":"MonkeScripts/ip[master]","outputFolderName":"MonkeScripts_ip_master"},{"location":{"location":"https://github.com/chenxk619/ip.git","repoName":"ip","organization":"chenxk619","domainName":"github"},"branch":"master","displayName":"chenxk619/ip[master]","outputFolderName":"chenxk619_ip_master"},{"location":{"location":"https://github.com/hwc0419/ip.git","repoName":"ip","organization":"hwc0419","domainName":"github"},"branch":"master","displayName":"hwc0419/ip[master]","outputFolderName":"hwc0419_ip_master"},{"location":{"location":"https://github.com/JackieNeoCEG/ip.git","repoName":"ip","organization":"JackieNeoCEG","domainName":"github"},"branch":"master","displayName":"JackieNeoCEG/ip[master]","outputFolderName":"JackieNeoCEG_ip_master"},{"location":{"location":"https://github.com/Mmaxx15/ip.git","repoName":"ip","organization":"Mmaxx15","domainName":"github"},"branch":"master","displayName":"Mmaxx15/ip[master]","outputFolderName":"Mmaxx15_ip_master"},{"location":{"location":"https://github.com/clarencepohh/ip.git","repoName":"ip","organization":"clarencepohh","domainName":"github"},"branch":"master","displayName":"clarencepohh/ip[master]","outputFolderName":"clarencepohh_ip_master"},{"location":{"location":"https://github.com/NicholasTanYY/ip.git","repoName":"ip","organization":"NicholasTanYY","domainName":"github"},"branch":"master","displayName":"NicholasTanYY/ip[master]","outputFolderName":"NicholasTanYY_ip_master"},{"location":{"location":"https://github.com/HikoHikoHiko/ip.git","repoName":"ip","organization":"HikoHikoHiko","domainName":"github"},"branch":"master","displayName":"HikoHikoHiko/ip[master]","outputFolderName":"HikoHikoHiko_ip_master"},{"location":{"location":"https://github.com/soongensayo/ip.git","repoName":"ip","organization":"soongensayo","domainName":"github"},"branch":"master","displayName":"soongensayo/ip[master]","outputFolderName":"soongensayo_ip_master"},{"location":{"location":"https://github.com/nikhil-2101/ip.git","repoName":"ip","organization":"nikhil-2101","domainName":"github"},"branch":"master","displayName":"nikhil-2101/ip[master]","outputFolderName":"nikhil-2101_ip_master"},{"location":{"location":"https://github.com/Praneet-25/ip.git","repoName":"ip","organization":"Praneet-25","domainName":"github"},"branch":"master","displayName":"Praneet-25/ip[master]","outputFolderName":"Praneet-25_ip_master"},{"location":{"location":"https://github.com/mukund1403/ip.git","repoName":"ip","organization":"mukund1403","domainName":"github"},"branch":"master","displayName":"mukund1403/ip[master]","outputFolderName":"mukund1403_ip_master"},{"location":{"location":"https://github.com/nicknamenic/ip.git","repoName":"ip","organization":"nicknamenic","domainName":"github"},"branch":"master","displayName":"nicknamenic/ip[master]","outputFolderName":"nicknamenic_ip_master"},{"location":{"location":"https://github.com/BryanCastorius/ip.git","repoName":"ip","organization":"BryanCastorius","domainName":"github"},"branch":"master","displayName":"BryanCastorius/ip[master]","outputFolderName":"BryanCastorius_ip_master"},{"location":{"location":"https://github.com/PDHung1104/ip.git","repoName":"ip","organization":"PDHung1104","domainName":"github"},"branch":"master","displayName":"PDHung1104/ip[master]","outputFolderName":"PDHung1104_ip_master"},{"location":{"location":"https://github.com/jasonlienardi/ip.git","repoName":"ip","organization":"jasonlienardi","domainName":"github"},"branch":"master","displayName":"jasonlienardi/ip[master]","outputFolderName":"jasonlienardi_ip_master"},{"location":{"location":"https://github.com/edwardhumi/ip.git","repoName":"ip","organization":"edwardhumi","domainName":"github"},"branch":"master","displayName":"edwardhumi/ip[master]","outputFolderName":"edwardhumi_ip_master"},{"location":{"location":"https://github.com/z-wenqing/ip.git","repoName":"ip","organization":"z-wenqing","domainName":"github"},"branch":"master","displayName":"z-wenqing/ip[master]","outputFolderName":"z-wenqing_ip_master"},{"location":{"location":"https://github.com/Joshuahoky/ip.git","repoName":"ip","organization":"Joshuahoky","domainName":"github"},"branch":"master","displayName":"Joshuahoky/ip[master]","outputFolderName":"Joshuahoky_ip_master"},{"location":{"location":"https://github.com/Dheekshitha2/ip.git","repoName":"ip","organization":"Dheekshitha2","domainName":"github"},"branch":"master","displayName":"Dheekshitha2/ip[master]","outputFolderName":"Dheekshitha2_ip_master"},{"location":{"location":"https://github.com/liuy1103/ip.git","repoName":"ip","organization":"liuy1103","domainName":"github"},"branch":"master","displayName":"liuy1103/ip[master]","outputFolderName":"liuy1103_ip_master"},{"location":{"location":"https://github.com/hongyijie06/ip.git","repoName":"ip","organization":"hongyijie06","domainName":"github"},"branch":"master","displayName":"hongyijie06/ip[master]","outputFolderName":"hongyijie06_ip_master"},{"location":{"location":"https://github.com/liuzehui03/ip.git","repoName":"ip","organization":"liuzehui03","domainName":"github"},"branch":"master","displayName":"liuzehui03/ip[master]","outputFolderName":"liuzehui03_ip_master"},{"location":{"location":"https://github.com/ZhuSijia0711/ip.git","repoName":"ip","organization":"ZhuSijia0711","domainName":"github"},"branch":"master","displayName":"ZhuSijia0711/ip[master]","outputFolderName":"ZhuSijia0711_ip_master"},{"location":{"location":"https://github.com/hafizuddin-a/ip.git","repoName":"ip","organization":"hafizuddin-a","domainName":"github"},"branch":"master","displayName":"hafizuddin-a/ip[master]","outputFolderName":"hafizuddin-a_ip_master"},{"location":{"location":"https://github.com/jasraa/ip.git","repoName":"ip","organization":"jasraa","domainName":"github"},"branch":"master","displayName":"jasraa/ip[master]","outputFolderName":"jasraa_ip_master"},{"location":{"location":"https://github.com/SharlynLui/ip.git","repoName":"ip","organization":"SharlynLui","domainName":"github"},"branch":"master","displayName":"SharlynLui/ip[master]","outputFolderName":"SharlynLui_ip_master"},{"location":{"location":"https://github.com/claribelho/ip.git","repoName":"ip","organization":"claribelho","domainName":"github"},"branch":"master","displayName":"claribelho/ip[master]","outputFolderName":"claribelho_ip_master"},{"location":{"location":"https://github.com/ZMinghuiZ/ip.git","repoName":"ip","organization":"ZMinghuiZ","domainName":"github"},"branch":"master","displayName":"ZMinghuiZ/ip[master]","outputFolderName":"ZMinghuiZ_ip_master"},{"location":{"location":"https://github.com/fxe025/ip.git","repoName":"ip","organization":"fxe025","domainName":"github"},"branch":"master","displayName":"fxe025/ip[master]","outputFolderName":"fxe025_ip_master"},{"location":{"location":"https://github.com/YoengKokLeong/ip.git","repoName":"ip","organization":"YoengKokLeong","domainName":"github"},"branch":"master","displayName":"YoengKokLeong/ip[master]","outputFolderName":"YoengKokLeong_ip_master"},{"location":{"location":"https://github.com/1simjustin/ip.git","repoName":"ip","organization":"1simjustin","domainName":"github"},"branch":"master","displayName":"1simjustin/ip[master]","outputFolderName":"1simjustin_ip_master"},{"location":{"location":"https://github.com/dextboy/ip.git","repoName":"ip","organization":"dextboy","domainName":"github"},"branch":"master","displayName":"dextboy/ip[master]","outputFolderName":"dextboy_ip_master"},{"location":{"location":"https://github.com/ZhangWenyue3325/ip.git","repoName":"ip","organization":"ZhangWenyue3325","domainName":"github"},"branch":"master","displayName":"ZhangWenyue3325/ip[master]","outputFolderName":"ZhangWenyue3325_ip_master"},{"location":{"location":"https://github.com/ZhouJunmin/ip.git","repoName":"ip","organization":"ZhouJunmin","domainName":"github"},"branch":"master","displayName":"ZhouJunmin/ip[master]","outputFolderName":"ZhouJunmin_ip_master"},{"location":{"location":"https://github.com/LuoYu-uwu/ip.git","repoName":"ip","organization":"LuoYu-uwu","domainName":"github"},"branch":"master","displayName":"LuoYu-uwu/ip[master]","outputFolderName":"LuoYu-uwu_ip_master"},{"location":{"location":"https://github.com/FeathersRe/ip.git","repoName":"ip","organization":"FeathersRe","domainName":"github"},"branch":"master","displayName":"FeathersRe/ip[master]","outputFolderName":"FeathersRe_ip_master"},{"location":{"location":"https://github.com/tayponghee/ip.git","repoName":"ip","organization":"tayponghee","domainName":"github"},"branch":"master","displayName":"tayponghee/ip[master]","outputFolderName":"tayponghee_ip_master"},{"location":{"location":"https://github.com/tannerlie/ip.git","repoName":"ip","organization":"tannerlie","domainName":"github"},"branch":"master","displayName":"tannerlie/ip[master]","outputFolderName":"tannerlie_ip_master"},{"location":{"location":"https://github.com/ChenKangg/ip.git","repoName":"ip","organization":"ChenKangg","domainName":"github"},"branch":"master","displayName":"ChenKangg/ip[master]","outputFolderName":"ChenKangg_ip_master"},{"location":{"location":"https://github.com/tiffanyliu0220/ip.git","repoName":"ip","organization":"tiffanyliu0220","domainName":"github"},"branch":"master","displayName":"tiffanyliu0220/ip[master]","outputFolderName":"tiffanyliu0220_ip_master"},{"location":{"location":"https://github.com/IanFH/ip.git","repoName":"ip","organization":"IanFH","domainName":"github"},"branch":"master","displayName":"IanFH/ip[master]","outputFolderName":"IanFH_ip_master"},{"location":{"location":"https://github.com/JianJiaT/ip.git","repoName":"ip","organization":"JianJiaT","domainName":"github"},"branch":"master","displayName":"JianJiaT/ip[master]","outputFolderName":"JianJiaT_ip_master"},{"location":{"location":"https://github.com/Ijaaz01/ip.git","repoName":"ip","organization":"Ijaaz01","domainName":"github"},"branch":"master","displayName":"Ijaaz01/ip[master]","outputFolderName":"Ijaaz01_ip_master"},{"location":{"location":"https://github.com/EugeneChanJiajun/ip.git","repoName":"ip","organization":"EugeneChanJiajun","domainName":"github"},"branch":"master","displayName":"EugeneChanJiajun/ip[master]","outputFolderName":"EugeneChanJiajun_ip_master"},{"location":{"location":"https://github.com/kyhjonathan/ip.git","repoName":"ip","organization":"kyhjonathan","domainName":"github"},"branch":"master","displayName":"kyhjonathan/ip[master]","outputFolderName":"kyhjonathan_ip_master"},{"location":{"location":"https://github.com/Luo-Z-Y/ip.git","repoName":"ip","organization":"Luo-Z-Y","domainName":"github"},"branch":"master","displayName":"Luo-Z-Y/ip[master]","outputFolderName":"Luo-Z-Y_ip_master"},{"location":{"location":"https://github.com/JingHaoooo/ip.git","repoName":"ip","organization":"JingHaoooo","domainName":"github"},"branch":"master","displayName":"JingHaoooo/ip[master]","outputFolderName":"JingHaoooo_ip_master"},{"location":{"location":"https://github.com/blackmirag3/ip.git","repoName":"ip","organization":"blackmirag3","domainName":"github"},"branch":"master","displayName":"blackmirag3/ip[master]","outputFolderName":"blackmirag3_ip_master"},{"location":{"location":"https://github.com/luozihui2003/ip.git","repoName":"ip","organization":"luozihui2003","domainName":"github"},"branch":"master","displayName":"luozihui2003/ip[master]","outputFolderName":"luozihui2003_ip_master"},{"location":{"location":"https://github.com/adamzzq/ip.git","repoName":"ip","organization":"adamzzq","domainName":"github"},"branch":"master","displayName":"adamzzq/ip[master]","outputFolderName":"adamzzq_ip_master"},{"location":{"location":"https://github.com/OKW32/ip.git","repoName":"ip","organization":"OKW32","domainName":"github"},"branch":"master","displayName":"OKW32/ip[master]","outputFolderName":"OKW32_ip_master"},{"location":{"location":"https://github.com/Haotian199/ip.git","repoName":"ip","organization":"Haotian199","domainName":"github"},"branch":"master","displayName":"Haotian199/ip[master]","outputFolderName":"Haotian199_ip_master"},{"location":{"location":"https://github.com/kirangeofran/ip.git","repoName":"ip","organization":"kirangeofran","domainName":"github"},"branch":"master","displayName":"kirangeofran/ip[master]","outputFolderName":"kirangeofran_ip_master"},{"location":{"location":"https://github.com/B1G-SAM/ip.git","repoName":"ip","organization":"B1G-SAM","domainName":"github"},"branch":"master","displayName":"B1G-SAM/ip[master]","outputFolderName":"B1G-SAM_ip_master"},{"location":{"location":"https://github.com/yyangdaa/ip.git","repoName":"ip","organization":"yyangdaa","domainName":"github"},"branch":"master","displayName":"yyangdaa/ip[master]","outputFolderName":"yyangdaa_ip_master"},{"location":{"location":"https://github.com/runxinghuan/ip.git","repoName":"ip","organization":"runxinghuan","domainName":"github"},"branch":"master","displayName":"runxinghuan/ip[master]","outputFolderName":"runxinghuan_ip_master"},{"location":{"location":"https://github.com/nigelheng/ip.git","repoName":"ip","organization":"nigelheng","domainName":"github"},"branch":"master","displayName":"nigelheng/ip[master]","outputFolderName":"nigelheng_ip_master"},{"location":{"location":"https://github.com/cayennegoh/ip.git","repoName":"ip","organization":"cayennegoh","domainName":"github"},"branch":"master","displayName":"cayennegoh/ip[master]","outputFolderName":"cayennegoh_ip_master"},{"location":{"location":"https://github.com/lordgareth10/ip.git","repoName":"ip","organization":"lordgareth10","domainName":"github"},"branch":"master","displayName":"lordgareth10/ip[master]","outputFolderName":"lordgareth10_ip_master"},{"location":{"location":"https://github.com/vimalapugazhan/ip.git","repoName":"ip","organization":"vimalapugazhan","domainName":"github"},"branch":"master","displayName":"vimalapugazhan/ip[master]","outputFolderName":"vimalapugazhan_ip_master"},{"location":{"location":"https://github.com/shawnpong/ip.git","repoName":"ip","organization":"shawnpong","domainName":"github"},"branch":"master","displayName":"shawnpong/ip[master]","outputFolderName":"shawnpong_ip_master"},{"location":{"location":"https://github.com/TimothyLKM/ip.git","repoName":"ip","organization":"TimothyLKM","domainName":"github"},"branch":"master","displayName":"TimothyLKM/ip[master]","outputFolderName":"TimothyLKM_ip_master"},{"location":{"location":"https://github.com/JeffinsonDarmawan/ip.git","repoName":"ip","organization":"JeffinsonDarmawan","domainName":"github"},"branch":"master","displayName":"JeffinsonDarmawan/ip[master]","outputFolderName":"JeffinsonDarmawan_ip_master"},{"location":{"location":"https://github.com/iscyng/ip.git","repoName":"ip","organization":"iscyng","domainName":"github"},"branch":"master","displayName":"iscyng/ip[master]","outputFolderName":"iscyng_ip_master"},{"location":{"location":"https://github.com/Hws2209/ip.git","repoName":"ip","organization":"Hws2209","domainName":"github"},"branch":"master","displayName":"Hws2209/ip[master]","outputFolderName":"Hws2209_ip_master"},{"location":{"location":"https://github.com/nyh3/ip.git","repoName":"ip","organization":"nyh3","domainName":"github"},"branch":"master","displayName":"nyh3/ip[master]","outputFolderName":"nyh3_ip_master"},{"location":{"location":"https://github.com/anneleong/ip.git","repoName":"ip","organization":"anneleong","domainName":"github"},"branch":"master","displayName":"anneleong/ip[master]","outputFolderName":"anneleong_ip_master"},{"location":{"location":"https://github.com/CXIA17/ip.git","repoName":"ip","organization":"CXIA17","domainName":"github"},"branch":"master","displayName":"CXIA17/ip[master]","outputFolderName":"CXIA17_ip_master"},{"location":{"location":"https://github.com/AhmedShaiyan/ip.git","repoName":"ip","organization":"AhmedShaiyan","domainName":"github"},"branch":"master","displayName":"AhmedShaiyan/ip[master]","outputFolderName":"AhmedShaiyan_ip_master"},{"location":{"location":"https://github.com/pradeep-cod/ip.git","repoName":"ip","organization":"pradeep-cod","domainName":"github"},"branch":"master","displayName":"pradeep-cod/ip[master]","outputFolderName":"pradeep-cod_ip_master"},{"location":{"location":"https://github.com/STeng618/ip.git","repoName":"ip","organization":"STeng618","domainName":"github"},"branch":"master","displayName":"STeng618/ip[master]","outputFolderName":"STeng618_ip_master"},{"location":{"location":"https://github.com/HiteshriAcharya/ip.git","repoName":"ip","organization":"HiteshriAcharya","domainName":"github"},"branch":"master","displayName":"HiteshriAcharya/ip[master]","outputFolderName":"HiteshriAcharya_ip_master"},{"location":{"location":"https://github.com/avrilgk/ip.git","repoName":"ip","organization":"avrilgk","domainName":"github"},"branch":"master","displayName":"avrilgk/ip[master]","outputFolderName":"avrilgk_ip_master"},{"location":{"location":"https://github.com/IncyBot/ip.git","repoName":"ip","organization":"IncyBot","domainName":"github"},"branch":"master","displayName":"IncyBot/ip[master]","outputFolderName":"IncyBot_ip_master"},{"location":{"location":"https://github.com/ymirmeddeb/ip.git","repoName":"ip","organization":"ymirmeddeb","domainName":"github"},"branch":"master","displayName":"ymirmeddeb/ip[master]","outputFolderName":"ymirmeddeb_ip_master"},{"location":{"location":"https://github.com/Aak242/ip.git","repoName":"ip","organization":"Aak242","domainName":"github"},"branch":"master","displayName":"Aak242/ip[master]","outputFolderName":"Aak242_ip_master"},{"location":{"location":"https://github.com/aaravrawal52/ip.git","repoName":"ip","organization":"aaravrawal52","domainName":"github"},"branch":"master","displayName":"aaravrawal52/ip[master]","outputFolderName":"aaravrawal52_ip_master"},{"location":{"location":"https://github.com/ChongXern/ip.git","repoName":"ip","organization":"ChongXern","domainName":"github"},"branch":"master","displayName":"ChongXern/ip[master]","outputFolderName":"ChongXern_ip_master"},{"location":{"location":"https://github.com/Jamarcus111/ip.git","repoName":"ip","organization":"Jamarcus111","domainName":"github"},"branch":"master","displayName":"Jamarcus111/ip[master]","outputFolderName":"Jamarcus111_ip_master"},{"location":{"location":"https://github.com/BestDownLoader365/ip.git","repoName":"ip","organization":"BestDownLoader365","domainName":"github"},"branch":"master","displayName":"BestDownLoader365/ip[master]","outputFolderName":"BestDownLoader365_ip_master"},{"location":{"location":"https://github.com/ShyamKrishna33/ip.git","repoName":"ip","organization":"ShyamKrishna33","domainName":"github"},"branch":"master","displayName":"ShyamKrishna33/ip[master]","outputFolderName":"ShyamKrishna33_ip_master"},{"location":{"location":"https://github.com/StargazerX0/ip.git","repoName":"ip","organization":"StargazerX0","domainName":"github"},"branch":"master","displayName":"StargazerX0/ip[master]","outputFolderName":"StargazerX0_ip_master"},{"location":{"location":"https://github.com/eliztan/ip.git","repoName":"ip","organization":"eliztan","domainName":"github"},"branch":"master","displayName":"eliztan/ip[master]","outputFolderName":"eliztan_ip_master"},{"location":{"location":"https://github.com/SuveenE/ip.git","repoName":"ip","organization":"SuveenE","domainName":"github"},"branch":"master","displayName":"SuveenE/ip[master]","outputFolderName":"SuveenE_ip_master"},{"location":{"location":"https://github.com/Mahesh1772/ip.git","repoName":"ip","organization":"Mahesh1772","domainName":"github"},"branch":"master","displayName":"Mahesh1772/ip[master]","outputFolderName":"Mahesh1772_ip_master"},{"location":{"location":"https://github.com/Elyovs/ip.git","repoName":"ip","organization":"Elyovs","domainName":"github"},"branch":"master","displayName":"Elyovs/ip[master]","outputFolderName":"Elyovs_ip_master"},{"location":{"location":"https://github.com/vibes-863/ip.git","repoName":"ip","organization":"vibes-863","domainName":"github"},"branch":"master","displayName":"vibes-863/ip[master]","outputFolderName":"vibes-863_ip_master"},{"location":{"location":"https://github.com/Kishen271828/ip.git","repoName":"ip","organization":"Kishen271828","domainName":"github"},"branch":"master","displayName":"Kishen271828/ip[master]","outputFolderName":"Kishen271828_ip_master"},{"location":{"location":"https://github.com/pqienso/ip.git","repoName":"ip","organization":"pqienso","domainName":"github"},"branch":"master","displayName":"pqienso/ip[master]","outputFolderName":"pqienso_ip_master"},{"location":{"location":"https://github.com/LWachtel1/ip.git","repoName":"ip","organization":"LWachtel1","domainName":"github"},"branch":"master","displayName":"LWachtel1/ip[master]","outputFolderName":"LWachtel1_ip_master"},{"location":{"location":"https://github.com/azamanis/ip.git","repoName":"ip","organization":"azamanis","domainName":"github"},"branch":"master","displayName":"azamanis/ip[master]","outputFolderName":"azamanis_ip_master"},{"location":{"location":"https://github.com/john-nng/ip.git","repoName":"ip","organization":"john-nng","domainName":"github"},"branch":"master","displayName":"john-nng/ip[master]","outputFolderName":"john-nng_ip_master"},{"location":{"location":"https://github.com/songyuew/ip.git","repoName":"ip","organization":"songyuew","domainName":"github"},"branch":"master","displayName":"songyuew/ip[master]","outputFolderName":"songyuew_ip_master"},{"location":{"location":"https://github.com/Celineyaa/ip.git","repoName":"ip","organization":"Celineyaa","domainName":"github"},"branch":"master","displayName":"Celineyaa/ip[master]","outputFolderName":"Celineyaa_ip_master"},{"location":{"location":"https://github.com/yzhanglp/ip.git","repoName":"ip","organization":"yzhanglp","domainName":"github"},"branch":"master","displayName":"yzhanglp/ip[master]","outputFolderName":"yzhanglp_ip_master"},{"location":{"location":"https://github.com/HenryGan138/ip.git","repoName":"ip","organization":"HenryGan138","domainName":"github"},"branch":"master","displayName":"HenryGan138/ip[master]","outputFolderName":"HenryGan138_ip_master"},{"location":{"location":"https://github.com/ningsongshen/ip.git","repoName":"ip","organization":"ningsongshen","domainName":"github"},"branch":"master","displayName":"ningsongshen/ip[master]","outputFolderName":"ningsongshen_ip_master"},{"location":{"location":"https://github.com/jensonjenkins/ip.git","repoName":"ip","organization":"jensonjenkins","domainName":"github"},"branch":"master","displayName":"jensonjenkins/ip[master]","outputFolderName":"jensonjenkins_ip_master"},{"location":{"location":"https://github.com/ttasnim5/ip.git","repoName":"ip","organization":"ttasnim5","domainName":"github"},"branch":"master","displayName":"ttasnim5/ip[master]","outputFolderName":"ttasnim5_ip_master"},{"location":{"location":"https://github.com/mihirheda02/ip.git","repoName":"ip","organization":"mihirheda02","domainName":"github"},"branch":"master","displayName":"mihirheda02/ip[master]","outputFolderName":"mihirheda02_ip_master"},{"location":{"location":"https://github.com/nidhi-nayak/ip.git","repoName":"ip","organization":"nidhi-nayak","domainName":"github"},"branch":"master","displayName":"nidhi-nayak/ip[master]","outputFolderName":"nidhi-nayak_ip_master"},{"location":{"location":"https://github.com/jthibault03/ip.git","repoName":"ip","organization":"jthibault03","domainName":"github"},"branch":"master","displayName":"jthibault03/ip[master]","outputFolderName":"jthibault03_ip_master"},{"location":{"location":"https://github.com/tinaliu27/ip.git","repoName":"ip","organization":"tinaliu27","domainName":"github"},"branch":"master","displayName":"tinaliu27/ip[master]","outputFolderName":"tinaliu27_ip_master"},{"location":{"location":"https://github.com/a-wild-chocolate/ip.git","repoName":"ip","organization":"a-wild-chocolate","domainName":"github"},"branch":"master","displayName":"a-wild-chocolate/ip[master]","outputFolderName":"a-wild-chocolate_ip_master"},{"location":{"location":"https://github.com/annnniexu/ip.git","repoName":"ip","organization":"annnniexu","domainName":"github"},"branch":"master","displayName":"annnniexu/ip[master]","outputFolderName":"annnniexu_ip_master"},{"location":{"location":"https://github.com/Andy123qq4/ip.git","repoName":"ip","organization":"Andy123qq4","domainName":"github"},"branch":"master","displayName":"Andy123qq4/ip[master]","outputFolderName":"Andy123qq4_ip_master"},{"location":{"location":"https://github.com/Geinzit/ip.git","repoName":"ip","organization":"Geinzit","domainName":"github"},"branch":"master","displayName":"Geinzit/ip[master]","outputFolderName":"Geinzit_ip_master"},{"location":{"location":"https://github.com/classskipper351/ip.git","repoName":"ip","organization":"classskipper351","domainName":"github"},"branch":"master","displayName":"classskipper351/ip[master]","outputFolderName":"classskipper351_ip_master"},{"location":{"location":"https://github.com/raajamani/ip.git","repoName":"ip","organization":"raajamani","domainName":"github"},"branch":"master","displayName":"raajamani/ip[master]","outputFolderName":"raajamani_ip_master"},{"location":{"location":"https://github.com/YHWong20/ip.git","repoName":"ip","organization":"YHWong20","domainName":"github"},"branch":"master","displayName":"YHWong20/ip[master]","outputFolderName":"YHWong20_ip_master"},{"location":{"location":"https://github.com/syj02/ip.git","repoName":"ip","organization":"syj02","domainName":"github"},"branch":"master","displayName":"syj02/ip[master]","outputFolderName":"syj02_ip_master"},{"location":{"location":"https://github.com/T0nyLin/ip.git","repoName":"ip","organization":"T0nyLin","domainName":"github"},"branch":"master","displayName":"T0nyLin/ip[master]","outputFolderName":"T0nyLin_ip_master"},{"location":{"location":"https://github.com/XavierLiau34/ip.git","repoName":"ip","organization":"XavierLiau34","domainName":"github"},"branch":"master","displayName":"XavierLiau34/ip[master]","outputFolderName":"XavierLiau34_ip_master"},{"location":{"location":"https://github.com/cheeseong2001/ip.git","repoName":"ip","organization":"cheeseong2001","domainName":"github"},"branch":"master","displayName":"cheeseong2001/ip[master]","outputFolderName":"cheeseong2001_ip_master"},{"location":{"location":"https://github.com/rouvinerh/ip.git","repoName":"ip","organization":"rouvinerh","domainName":"github"},"branch":"master","displayName":"rouvinerh/ip[master]","outputFolderName":"rouvinerh_ip_master"},{"location":{"location":"https://github.com/NgYaoDong/ip.git","repoName":"ip","organization":"NgYaoDong","domainName":"github"},"branch":"master","displayName":"NgYaoDong/ip[master]","outputFolderName":"NgYaoDong_ip_master"},{"location":{"location":"https://github.com/nur-haziq/ip.git","repoName":"ip","organization":"nur-haziq","domainName":"github"},"branch":"master","displayName":"nur-haziq/ip[master]","outputFolderName":"nur-haziq_ip_master"},{"location":{"location":"https://github.com/nkotaa/ip.git","repoName":"ip","organization":"nkotaa","domainName":"github"},"branch":"master","displayName":"nkotaa/ip[master]","outputFolderName":"nkotaa_ip_master"},{"location":{"location":"https://github.com/wenenhoe/ip.git","repoName":"ip","organization":"wenenhoe","domainName":"github"},"branch":"master","displayName":"wenenhoe/ip[master]","outputFolderName":"wenenhoe_ip_master"},{"location":{"location":"https://github.com/wjunjie01/ip.git","repoName":"ip","organization":"wjunjie01","domainName":"github"},"branch":"master","displayName":"wjunjie01/ip[master]","outputFolderName":"wjunjie01_ip_master"},{"location":{"location":"https://github.com/L5-Z/ip.git","repoName":"ip","organization":"L5-Z","domainName":"github"},"branch":"master","displayName":"L5-Z/ip[master]","outputFolderName":"L5-Z_ip_master"},{"location":{"location":"https://github.com/annoy-o-mus/ip.git","repoName":"ip","organization":"annoy-o-mus","domainName":"github"},"branch":"master","displayName":"annoy-o-mus/ip[master]","outputFolderName":"annoy-o-mus_ip_master"},{"location":{"location":"https://github.com/nickczh/ip.git","repoName":"ip","organization":"nickczh","domainName":"github"},"branch":"master","displayName":"nickczh/ip[master]","outputFolderName":"nickczh_ip_master"},{"location":{"location":"https://github.com/e0958902/ip.git","repoName":"ip","organization":"e0958902","domainName":"github"},"branch":"master","displayName":"e0958902/ip[master]","outputFolderName":"e0958902_ip_master"},{"location":{"location":"https://github.com/JustinSoh/ip.git","repoName":"ip","organization":"JustinSoh","domainName":"github"},"branch":"master","displayName":"JustinSoh/ip[master]","outputFolderName":"JustinSoh_ip_master"},{"location":{"location":"https://github.com/PureUsagi/ip.git","repoName":"ip","organization":"PureUsagi","domainName":"github"},"branch":"master","displayName":"PureUsagi/ip[master]","outputFolderName":"PureUsagi_ip_master"},{"location":{"location":"https://github.com/Kobot7/ip.git","repoName":"ip","organization":"Kobot7","domainName":"github"},"branch":"master","displayName":"Kobot7/ip[master]","outputFolderName":"Kobot7_ip_master"},{"location":{"location":"https://github.com/EdmundTangg/ip.git","repoName":"ip","organization":"EdmundTangg","domainName":"github"},"branch":"master","displayName":"EdmundTangg/ip[master]","outputFolderName":"EdmundTangg_ip_master"},{"location":{"location":"https://github.com/kyuichyi/ip.git","repoName":"ip","organization":"kyuichyi","domainName":"github"},"branch":"master","displayName":"kyuichyi/ip[master]","outputFolderName":"kyuichyi_ip_master"},{"location":{"location":"https://github.com/imanamirshah/ip.git","repoName":"ip","organization":"imanamirshah","domainName":"github"},"branch":"master","displayName":"imanamirshah/ip[master]","outputFolderName":"imanamirshah_ip_master"},{"location":{"location":"https://github.com/j013n3/ip.git","repoName":"ip","organization":"j013n3","domainName":"github"},"branch":"master","displayName":"j013n3/ip[master]","outputFolderName":"j013n3_ip_master"},{"location":{"location":"https://github.com/leongxingyu/ip.git","repoName":"ip","organization":"leongxingyu","domainName":"github"},"branch":"master","displayName":"leongxingyu/ip[master]","outputFolderName":"leongxingyu_ip_master"}],"errorSet":[{"repoName":"dylansiew/ip[master]","errorMessage":"Failed to clone from https://github.com/dylansiew/ip.git"},{"repoName":"hailey-jung/ip[master]","errorMessage":"Failed to clone from https://github.com/hailey-jung/ip.git"},{"repoName":"MayFairMI6/ip[master]","errorMessage":"Failed to clone from https://github.com/MayFairMI6/ip.git"},{"repoName":"haowern98/ip[master]","errorMessage":"Failed to clone from https://github.com/haowern98/ip.git"},{"repoName":"SemiColonKen/ip[master]","errorMessage":"Failed to clone from https://github.com/SemiColonKen/ip.git"}],"sinceDate":"2024-01-19","untilDate":"2024-02-09","isSinceDateProvided":true,"isUntilDateProvided":false,"supportedDomainUrlMap":{"NOT_RECOGNIZED":{"BRANCH":"","REPO_URL":"UNSUPPORTED","BASE_URL":"UNSUPPORTED","HISTORY_PATH":"","COMMIT_PATH":"","BLAME_PATH":""},"github":{"BRANCH":"tree/$BRANCH","REPO_URL":"https://github.com/$ORGANIZATION/$REPO_NAME/","BASE_URL":"https://github.com/","HISTORY_PATH":"commits/$BRANCH/$FILE_PATH","COMMIT_PATH":"commit/$COMMIT_HASH","BLAME_PATH":"blame/$BRANCH/$FILE_PATH"}}} diff --git a/yuhengr_ip_master/authorship.json b/yuhengr_ip_master/authorship.json index 14dfd0ca..a5279d35 100644 --- a/yuhengr_ip_master/authorship.json +++ b/yuhengr_ip_master/authorship.json @@ -1 +1 @@ -[{"path":"src/main/java/Duke.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"-"},"content":"public class Duke {","lastModifiedDate":"2019-07-29"},{"lineNumber":2,"author":{"gitId":"-"},"content":" public static void main(String[] args) {","lastModifiedDate":"2019-07-29"},{"lineNumber":3,"author":{"gitId":"-"},"content":" String logo \u003d \" ____ _ \\n\"","lastModifiedDate":"2019-07-29"},{"lineNumber":4,"author":{"gitId":"-"},"content":" + \"| _ \\\\ _ _| | _____ \\n\"","lastModifiedDate":"2019-07-29"},{"lineNumber":5,"author":{"gitId":"-"},"content":" + \"| | | | | | | |/ / _ \\\\\\n\"","lastModifiedDate":"2019-07-29"},{"lineNumber":6,"author":{"gitId":"-"},"content":" + \"| |_| | |_| | \u003c __/\\n\"","lastModifiedDate":"2019-07-29"},{"lineNumber":7,"author":{"gitId":"-"},"content":" + \"|____/ \\\\__,_|_|\\\\_\\\\___|\\n\";","lastModifiedDate":"2019-07-29"},{"lineNumber":8,"author":{"gitId":"-"},"content":" System.out.println(\"Hello from\\n\" + logo);","lastModifiedDate":"2019-07-29"},{"lineNumber":9,"author":{"gitId":"yuhengr"},"content":" System.out.println(\"I\u0027m Ekud! What can I do for you?\");","lastModifiedDate":"2024-01-26"},{"lineNumber":10,"author":{"gitId":"yuhengr"},"content":" System.out.println(\"Bye. Hope to see you again soon.\");","lastModifiedDate":"2024-01-26"},{"lineNumber":11,"author":{"gitId":"-"},"content":" }","lastModifiedDate":"2019-07-29"},{"lineNumber":12,"author":{"gitId":"-"},"content":"}","lastModifiedDate":"2019-07-29"}],"authorContributionMap":{"yuhengr":2,"-":10}}] +[{"path":"src/main/java/Deadline.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"yuhengr"},"content":"public class Deadline extends Task{","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"yuhengr"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"yuhengr"},"content":" protected String by;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"yuhengr"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"yuhengr"},"content":" public Deadline(String description, String by) {","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"yuhengr"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"yuhengr"},"content":" this.by \u003d by;","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"yuhengr"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"yuhengr"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"yuhengr"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"yuhengr"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"yuhengr"},"content":" return \"[D]\" + super.toString() + \" (by: \" + by + \")\";","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"yuhengr"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"yuhengr"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"yuhengr":14}},{"path":"src/main/java/Duke.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"yuhengr"},"content":"import java.util.Scanner;","lastModifiedDate":"2024-02-02"},{"lineNumber":2,"author":{"gitId":"yuhengr"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":3,"author":{"gitId":"-"},"content":"public class Duke {","lastModifiedDate":"2019-07-29"},{"lineNumber":4,"author":{"gitId":"-"},"content":" public static void main(String[] args) {","lastModifiedDate":"2019-07-29"},{"lineNumber":5,"author":{"gitId":"-"},"content":" String logo \u003d \" ____ _ \\n\"","lastModifiedDate":"2019-07-29"},{"lineNumber":6,"author":{"gitId":"-"},"content":" + \"| _ \\\\ _ _| | _____ \\n\"","lastModifiedDate":"2019-07-29"},{"lineNumber":7,"author":{"gitId":"-"},"content":" + \"| | | | | | | |/ / _ \\\\\\n\"","lastModifiedDate":"2019-07-29"},{"lineNumber":8,"author":{"gitId":"-"},"content":" + \"| |_| | |_| | \u003c __/\\n\"","lastModifiedDate":"2019-07-29"},{"lineNumber":9,"author":{"gitId":"-"},"content":" + \"|____/ \\\\__,_|_|\\\\_\\\\___|\\n\";","lastModifiedDate":"2019-07-29"},{"lineNumber":10,"author":{"gitId":"-"},"content":" System.out.println(\"Hello from\\n\" + logo);","lastModifiedDate":"2019-07-29"},{"lineNumber":11,"author":{"gitId":"yuhengr"},"content":" System.out.println(\"I\u0027m Ekud! What can I do for you?\");","lastModifiedDate":"2024-01-26"},{"lineNumber":12,"author":{"gitId":"yuhengr"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":13,"author":{"gitId":"yuhengr"},"content":" String userInput;","lastModifiedDate":"2024-02-02"},{"lineNumber":14,"author":{"gitId":"yuhengr"},"content":" Scanner in \u003d new Scanner(System.in);","lastModifiedDate":"2024-02-02"},{"lineNumber":15,"author":{"gitId":"yuhengr"},"content":" Task[] tasks \u003d new Task[100];","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"yuhengr"},"content":" int taskCount \u003d 0;","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"yuhengr"},"content":" userInput \u003d in.nextLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":18,"author":{"gitId":"yuhengr"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":19,"author":{"gitId":"yuhengr"},"content":" while(!userInput.equals(\"bye\")){","lastModifiedDate":"2024-02-02"},{"lineNumber":20,"author":{"gitId":"yuhengr"},"content":" String[] words \u003d userInput.split(\" \");","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"yuhengr"},"content":" if(userInput.equals(\"list\")){","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"yuhengr"},"content":" System.out.println(\"Here are the tasks in your list:\");","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"yuhengr"},"content":" for(int i \u003d 0; i \u003c taskCount; i++){","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"yuhengr"},"content":" System.out.println((i + 1) + \".\" + tasks[i]);","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"yuhengr"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"yuhengr"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":27,"author":{"gitId":"yuhengr"},"content":" else if(words[0].equals(\"mark\")){","lastModifiedDate":"2024-02-09"},{"lineNumber":28,"author":{"gitId":"yuhengr"},"content":" int taskIndex \u003d Integer.parseInt(words[1]) - 1;","lastModifiedDate":"2024-02-09"},{"lineNumber":29,"author":{"gitId":"yuhengr"},"content":" tasks[taskIndex].markAsDone();","lastModifiedDate":"2024-02-09"},{"lineNumber":30,"author":{"gitId":"yuhengr"},"content":" System.out.println(\"Nice! I\u0027ve marked this task as done:\");","lastModifiedDate":"2024-02-09"},{"lineNumber":31,"author":{"gitId":"yuhengr"},"content":" System.out.println(tasks[taskIndex]);","lastModifiedDate":"2024-02-09"},{"lineNumber":32,"author":{"gitId":"yuhengr"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":33,"author":{"gitId":"yuhengr"},"content":" else if(words[0].equals(\"unmark\")){","lastModifiedDate":"2024-02-09"},{"lineNumber":34,"author":{"gitId":"yuhengr"},"content":" int taskIndex \u003d Integer.parseInt(words[1]) - 1;","lastModifiedDate":"2024-02-09"},{"lineNumber":35,"author":{"gitId":"yuhengr"},"content":" tasks[taskIndex].markAsNotDone();","lastModifiedDate":"2024-02-09"},{"lineNumber":36,"author":{"gitId":"yuhengr"},"content":" System.out.println(\"OK, I\u0027ve marked this task as not done yet:\");","lastModifiedDate":"2024-02-09"},{"lineNumber":37,"author":{"gitId":"yuhengr"},"content":" System.out.println(tasks[taskIndex]);","lastModifiedDate":"2024-02-09"},{"lineNumber":38,"author":{"gitId":"yuhengr"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":39,"author":{"gitId":"yuhengr"},"content":" else if(words[0].equals(\"todo\")){","lastModifiedDate":"2024-02-09"},{"lineNumber":40,"author":{"gitId":"yuhengr"},"content":" int dividerPosition \u003d userInput.indexOf(\" \");","lastModifiedDate":"2024-02-09"},{"lineNumber":41,"author":{"gitId":"yuhengr"},"content":" tasks[taskCount] \u003d new Todo(userInput.substring(dividerPosition + 1));","lastModifiedDate":"2024-02-09"},{"lineNumber":42,"author":{"gitId":"yuhengr"},"content":" System.out.println(\"Got it. I\u0027ve added this task:\");","lastModifiedDate":"2024-02-09"},{"lineNumber":43,"author":{"gitId":"yuhengr"},"content":" System.out.println(tasks[taskCount]);","lastModifiedDate":"2024-02-09"},{"lineNumber":44,"author":{"gitId":"yuhengr"},"content":" taskCount++;","lastModifiedDate":"2024-02-09"},{"lineNumber":45,"author":{"gitId":"yuhengr"},"content":" System.out.println(\"Now you have \" + taskCount + \" tasks in the list.\");","lastModifiedDate":"2024-02-09"},{"lineNumber":46,"author":{"gitId":"yuhengr"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":47,"author":{"gitId":"yuhengr"},"content":" else if(words[0].equals(\"deadline\")){","lastModifiedDate":"2024-02-09"},{"lineNumber":48,"author":{"gitId":"yuhengr"},"content":" int dividerPosition \u003d userInput.indexOf(\" \");","lastModifiedDate":"2024-02-09"},{"lineNumber":49,"author":{"gitId":"yuhengr"},"content":" int slashPosition \u003d userInput.indexOf(\"/by\");","lastModifiedDate":"2024-02-09"},{"lineNumber":50,"author":{"gitId":"yuhengr"},"content":" tasks[taskCount] \u003d new Deadline(userInput.substring(dividerPosition + 1, slashPosition - 1), userInput.substring(slashPosition + 4));","lastModifiedDate":"2024-02-09"},{"lineNumber":51,"author":{"gitId":"yuhengr"},"content":" System.out.println(\"Got it. I\u0027ve added this task:\");","lastModifiedDate":"2024-02-09"},{"lineNumber":52,"author":{"gitId":"yuhengr"},"content":" System.out.println(tasks[taskCount]);","lastModifiedDate":"2024-02-09"},{"lineNumber":53,"author":{"gitId":"yuhengr"},"content":" taskCount++;","lastModifiedDate":"2024-02-09"},{"lineNumber":54,"author":{"gitId":"yuhengr"},"content":" System.out.println(\"Now you have \" + taskCount + \" tasks in the list.\");","lastModifiedDate":"2024-02-09"},{"lineNumber":55,"author":{"gitId":"yuhengr"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":56,"author":{"gitId":"yuhengr"},"content":" else if(words[0].equals(\"event\")){","lastModifiedDate":"2024-02-09"},{"lineNumber":57,"author":{"gitId":"yuhengr"},"content":" int dividerPosition \u003d userInput.indexOf(\" \");","lastModifiedDate":"2024-02-09"},{"lineNumber":58,"author":{"gitId":"yuhengr"},"content":" int fromPosition \u003d userInput.indexOf(\"/from\");","lastModifiedDate":"2024-02-09"},{"lineNumber":59,"author":{"gitId":"yuhengr"},"content":" int toPosition \u003d userInput.indexOf(\"/to\");","lastModifiedDate":"2024-02-09"},{"lineNumber":60,"author":{"gitId":"yuhengr"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":61,"author":{"gitId":"yuhengr"},"content":" tasks[taskCount] \u003d new Event(userInput.substring(dividerPosition + 1, fromPosition - 1), userInput.substring(fromPosition + 6, toPosition - 1), userInput.substring(toPosition + 4));","lastModifiedDate":"2024-02-09"},{"lineNumber":62,"author":{"gitId":"yuhengr"},"content":" System.out.println(\"Got it. I\u0027ve added this task:\");","lastModifiedDate":"2024-02-09"},{"lineNumber":63,"author":{"gitId":"yuhengr"},"content":" System.out.println(tasks[taskCount]);","lastModifiedDate":"2024-02-09"},{"lineNumber":64,"author":{"gitId":"yuhengr"},"content":" taskCount++;","lastModifiedDate":"2024-02-09"},{"lineNumber":65,"author":{"gitId":"yuhengr"},"content":" System.out.println(\"Now you have \" + taskCount + \" tasks in the list.\");","lastModifiedDate":"2024-02-09"},{"lineNumber":66,"author":{"gitId":"yuhengr"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":67,"author":{"gitId":"yuhengr"},"content":" else{","lastModifiedDate":"2024-02-09"},{"lineNumber":68,"author":{"gitId":"yuhengr"},"content":" tasks[taskCount] \u003d new Todo(userInput);","lastModifiedDate":"2024-02-09"},{"lineNumber":69,"author":{"gitId":"yuhengr"},"content":" System.out.println(\"Got it. I\u0027ve added this task.\");","lastModifiedDate":"2024-02-09"},{"lineNumber":70,"author":{"gitId":"yuhengr"},"content":" System.out.println(tasks[taskCount]);","lastModifiedDate":"2024-02-09"},{"lineNumber":71,"author":{"gitId":"yuhengr"},"content":" taskCount++;","lastModifiedDate":"2024-02-09"},{"lineNumber":72,"author":{"gitId":"yuhengr"},"content":" System.out.println(\"Now you have \" + taskCount + \" tasks in the list.\");","lastModifiedDate":"2024-02-09"},{"lineNumber":73,"author":{"gitId":"yuhengr"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":74,"author":{"gitId":"yuhengr"},"content":" userInput \u003d in.nextLine();","lastModifiedDate":"2024-02-02"},{"lineNumber":75,"author":{"gitId":"yuhengr"},"content":" }","lastModifiedDate":"2024-02-02"},{"lineNumber":76,"author":{"gitId":"yuhengr"},"content":"","lastModifiedDate":"2024-02-02"},{"lineNumber":77,"author":{"gitId":"yuhengr"},"content":" System.out.println(\"Bye. Hope to see you again soon.\");","lastModifiedDate":"2024-01-26"},{"lineNumber":78,"author":{"gitId":"-"},"content":" }","lastModifiedDate":"2019-07-29"},{"lineNumber":79,"author":{"gitId":"-"},"content":"}","lastModifiedDate":"2019-07-29"}],"authorContributionMap":{"yuhengr":69,"-":10}},{"path":"src/main/java/Event.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"yuhengr"},"content":"public class Event extends Task{","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"yuhengr"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"yuhengr"},"content":" protected String startTime;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"yuhengr"},"content":" protected String endTime;","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"yuhengr"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"yuhengr"},"content":" public Event(String description, String startTime, String endTime) {","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"yuhengr"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"yuhengr"},"content":" this.startTime \u003d startTime;","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"yuhengr"},"content":" this.endTime \u003d endTime;","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"yuhengr"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"yuhengr"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"yuhengr"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"yuhengr"},"content":" return \"[E]\" + super.toString() + \" (from: \" + this.startTime + \" to: \" + this.endTime + \")\";","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"yuhengr"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"yuhengr"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"yuhengr":15}},{"path":"src/main/java/Task.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"yuhengr"},"content":"public class Task {","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"yuhengr"},"content":" protected String description;","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"yuhengr"},"content":" protected boolean isDone;","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"yuhengr"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"yuhengr"},"content":" public Task(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"yuhengr"},"content":" this.description \u003d description;","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"yuhengr"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"yuhengr"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"yuhengr"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"yuhengr"},"content":" public String getStatusIcon() {","lastModifiedDate":"2024-02-09"},{"lineNumber":11,"author":{"gitId":"yuhengr"},"content":" return (isDone ? \"X\" : \" \");","lastModifiedDate":"2024-02-09"},{"lineNumber":12,"author":{"gitId":"yuhengr"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":13,"author":{"gitId":"yuhengr"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":14,"author":{"gitId":"yuhengr"},"content":" public void markAsDone() {","lastModifiedDate":"2024-02-09"},{"lineNumber":15,"author":{"gitId":"yuhengr"},"content":" this.isDone \u003d true;","lastModifiedDate":"2024-02-09"},{"lineNumber":16,"author":{"gitId":"yuhengr"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":17,"author":{"gitId":"yuhengr"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":18,"author":{"gitId":"yuhengr"},"content":" public void markAsNotDone() {","lastModifiedDate":"2024-02-09"},{"lineNumber":19,"author":{"gitId":"yuhengr"},"content":" this.isDone \u003d false;","lastModifiedDate":"2024-02-09"},{"lineNumber":20,"author":{"gitId":"yuhengr"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":21,"author":{"gitId":"yuhengr"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":22,"author":{"gitId":"yuhengr"},"content":" @Override","lastModifiedDate":"2024-02-09"},{"lineNumber":23,"author":{"gitId":"yuhengr"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":24,"author":{"gitId":"yuhengr"},"content":" return String.format(\"[%s] %s\", this.getStatusIcon(), this.description);","lastModifiedDate":"2024-02-09"},{"lineNumber":25,"author":{"gitId":"yuhengr"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":26,"author":{"gitId":"yuhengr"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"yuhengr":26}},{"path":"src/main/java/Todo.java","fileType":"java","lines":[{"lineNumber":1,"author":{"gitId":"yuhengr"},"content":"public class Todo extends Task{","lastModifiedDate":"2024-02-09"},{"lineNumber":2,"author":{"gitId":"yuhengr"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":3,"author":{"gitId":"yuhengr"},"content":" public Todo(String description) {","lastModifiedDate":"2024-02-09"},{"lineNumber":4,"author":{"gitId":"yuhengr"},"content":" super(description);","lastModifiedDate":"2024-02-09"},{"lineNumber":5,"author":{"gitId":"yuhengr"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":6,"author":{"gitId":"yuhengr"},"content":"","lastModifiedDate":"2024-02-09"},{"lineNumber":7,"author":{"gitId":"yuhengr"},"content":" public String toString() {","lastModifiedDate":"2024-02-09"},{"lineNumber":8,"author":{"gitId":"yuhengr"},"content":" return \"[T]\" + super.toString();","lastModifiedDate":"2024-02-09"},{"lineNumber":9,"author":{"gitId":"yuhengr"},"content":" }","lastModifiedDate":"2024-02-09"},{"lineNumber":10,"author":{"gitId":"yuhengr"},"content":"}","lastModifiedDate":"2024-02-09"}],"authorContributionMap":{"yuhengr":10}}] diff --git a/yuhengr_ip_master/commits.json b/yuhengr_ip_master/commits.json index ea3a513e..a7d67f04 100644 --- a/yuhengr_ip_master/commits.json +++ b/yuhengr_ip_master/commits.json @@ -1 +1 @@ -{"authorDailyContributionsMap":{"yuhengr":[{"date":"2024-01-26","commitResults":[{"hash":"cfe27b718ed9ad72b5354a6ef24b8c9530c40ff0","isMergeCommit":false,"messageTitle":"Add chatbot skeleton","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":2,"deletions":0}}}]}]},"authorFileTypeContributionMap":{"yuhengr":{"java":2,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"yuhengr":0.4375},"authorDisplayNameMap":{"yuhengr":"CS2113-F15-1 REN ..HENG"}} +{"authorDailyContributionsMap":{"yuhengr":[{"date":"2024-01-26","commitResults":[{"hash":"cfe27b718ed9ad72b5354a6ef24b8c9530c40ff0","isMergeCommit":false,"messageTitle":"Add chatbot skeleton","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":2,"deletions":0}}}]},{"date":"2024-02-02","commitResults":[{"hash":"6db6312c21e81df3090c2ce2ff93a42098389c52","isMergeCommit":false,"messageTitle":"Add level 1","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":12,"deletions":0}}}]},{"date":"2024-02-09","commitResults":[{"hash":"efcec81bf51b0985956594359554643732c113be","isMergeCommit":false,"messageTitle":"Add level 2","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":12,"deletions":1}}},{"hash":"3440622a8966a0a8b2eea8281ce4584b1f80d864","isMergeCommit":false,"messageTitle":"Add level 3","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":43,"deletions":3}}},{"hash":"cec49c2501604da662de6000179c3294365bcaad","isMergeCommit":false,"messageTitle":"Add level 4","messageBody":"","fileTypesAndContributionMap":{"java":{"insertions":71,"deletions":2}}}]}]},"authorFileTypeContributionMap":{"yuhengr":{"java":134,"md":0,"fxml":0,"sh":0,"bat":0,"gradle":0,"txt":0}},"authorContributionVariance":{"yuhengr":754.686},"authorDisplayNameMap":{"yuhengr":"CS2113-F15-1 REN ..HENG"}}