duplicated block id: 1 size: 99 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/res/layout/tic_tac_toe_rib.xml (1:109) - android/tutorials/tutorial4/src/main/res/layout/tic_tac_toe_rib.xml (1:109) duplicated block id: 2 size: 99 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/res/layout/tic_tac_toe_rib.xml (1:109) - android/tutorials/tutorial4/src/main/res/layout/tic_tac_toe_rib.xml (1:109) duplicated block id: 3 size: 99 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/res/layout/tic_tac_toe_rib.xml (1:109) - android/tutorials/tutorial3/src/main/res/layout/tic_tac_toe_rib.xml (1:109) duplicated block id: 4 size: 99 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/res/layout/tic_tac_toe_rib.xml (1:109) - android/tutorials/tutorial4/src/main/res/layout/tic_tac_toe_rib.xml (1:109) duplicated block id: 5 size: 99 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/res/layout/tic_tac_toe_rib.xml (1:109) - android/tutorials/tutorial3-completed/src/main/res/layout/tic_tac_toe_rib.xml (1:109) duplicated block id: 6 size: 99 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/res/layout/tic_tac_toe_rib.xml (1:109) - android/tutorials/tutorial3/src/main/res/layout/tic_tac_toe_rib.xml (1:109) duplicated block id: 7 size: 89 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (20:181) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeInteractor.swift (20:181) duplicated block id: 8 size: 75 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (21:138) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (21:138) duplicated block id: 9 size: 75 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (21:138) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeViewController.swift (21:138) duplicated block id: 10 size: 75 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (21:138) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeViewController.swift (21:138) duplicated block id: 11 size: 69 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeView.java (31:122) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeView.java (31:122) duplicated block id: 12 size: 69 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeView.java (31:122) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeView.java (31:122) duplicated block id: 13 size: 69 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeView.java (31:122) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeView.java (31:122) duplicated block id: 14 size: 69 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeView.java (31:122) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeView.java (31:122) duplicated block id: 15 size: 69 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeView.java (31:122) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeView.java (31:122) duplicated block id: 16 size: 69 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeView.java (31:122) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeView.java (31:122) duplicated block id: 17 size: 58 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/ScoreBoard/BasicScoreBoardViewController.swift (21:112) - ios/tutorials/tutorial4/TicTacToe/ScoreBoard/BasicScoreBoardViewController.swift (21:112) duplicated block id: 18 size: 55 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/RootBuilder.java (35:123) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/RootBuilder.java (35:123) duplicated block id: 19 size: 55 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/RootBuilder.java (35:123) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/RootBuilder.java (35:123) duplicated block id: 20 size: 55 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/RootBuilder.java (35:123) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/RootBuilder.java (35:123) duplicated block id: 21 size: 53 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (28:102) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (28:102) duplicated block id: 22 size: 50 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/res/layout/off_game_rib.xml (1:60) - android/tutorials/tutorial3-completed/src/main/res/layout/off_game_rib.xml (1:60) duplicated block id: 23 size: 50 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/res/layout/off_game_rib.xml (1:60) - android/tutorials/tutorial3/src/main/res/layout/off_game_rib.xml (1:60) duplicated block id: 24 size: 50 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/res/layout/off_game_rib.xml (1:60) - android/tutorials/tutorial3/src/main/res/layout/off_game_rib.xml (1:60) duplicated block id: 25 size: 48 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedout/LoggedOutBuilder.java (33:115) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedout/LoggedOutBuilder.java (33:115) duplicated block id: 26 size: 48 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedout/LoggedOutBuilder.java (33:115) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedout/LoggedOutBuilder.java (33:115) duplicated block id: 27 size: 48 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedout/LoggedOutBuilder.java (33:115) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedout/LoggedOutBuilder.java (33:115) duplicated block id: 28 size: 48 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameBuilder.java (33:113) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameBuilder.java (33:113) duplicated block id: 29 size: 47 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (33:112) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (33:112) duplicated block id: 30 size: 46 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameViewController.swift (23:93) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameViewController.swift (23:93) duplicated block id: 31 size: 46 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinViewController.swift (23:92) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinViewController.swift (23:92) duplicated block id: 32 size: 45 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutViewController.swift (23:89) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (23:89) duplicated block id: 33 size: 45 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (23:89) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutViewController.swift (23:89) duplicated block id: 34 size: 45 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutViewController.swift (23:89) - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutViewController.swift (23:89) duplicated block id: 35 size: 45 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutViewController.swift (23:89) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutViewController.swift (23:89) duplicated block id: 36 size: 45 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutViewController.swift (23:89) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (23:89) duplicated block id: 37 size: 45 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (23:89) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutViewController.swift (23:89) duplicated block id: 38 size: 45 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutViewController.swift (23:89) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutViewController.swift (23:89) duplicated block id: 39 size: 45 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (23:89) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (23:89) duplicated block id: 40 size: 45 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (23:89) - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutViewController.swift (23:89) duplicated block id: 41 size: 45 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (67:137) - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (59:129) duplicated block id: 42 size: 45 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutViewController.swift (23:89) - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (23:89) duplicated block id: 43 size: 44 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedIn/LoggedInRouter.swift (19:87) - ios/tutorials/tutorial3/TicTacToe/LoggedIn/LoggedInRouter.swift (19:87) duplicated block id: 44 size: 43 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/res/layout/off_game_rib.xml (1:51) - android/tutorials/tutorial4/src/main/res/layout/off_game_rib.xml (1:51) duplicated block id: 45 size: 43 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/res/layout/off_game_rib.xml (1:51) - android/tutorials/tutorial4/src/main/res/layout/off_game_rib.xml (1:51) duplicated block id: 46 size: 43 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/res/layout/off_game_rib.xml (1:51) - android/tutorials/tutorial4/src/main/res/layout/off_game_rib.xml (1:51) duplicated block id: 47 size: 42 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (78:150) - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeInteractor.swift (80:152) duplicated block id: 48 size: 39 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/LoggedInRouter.java (26:77) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/LoggedInRouter.java (26:77) duplicated block id: 49 size: 38 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (72:129) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (81:138) duplicated block id: 50 size: 38 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (80:137) - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (81:138) duplicated block id: 51 size: 38 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (72:129) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeViewController.swift (81:138) duplicated block id: 52 size: 38 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (81:138) - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (72:129) duplicated block id: 53 size: 38 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (80:137) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (81:138) duplicated block id: 54 size: 38 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (80:137) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeViewController.swift (81:138) duplicated block id: 55 size: 37 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/LoggedIn/LoggedInRouter.swift (19:78) - ios/tutorials/tutorial4/TicTacToe/LoggedIn/LoggedInRouter.swift (19:78) duplicated block id: 56 size: 36 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/tictactoe/Board.java (20:71) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/tictactoe/Board.java (20:71) duplicated block id: 57 size: 36 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/Board.java (20:71) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/Board.java (20:71) duplicated block id: 58 size: 36 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/Board.java (20:71) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/tictactoe/Board.java (20:71) duplicated block id: 59 size: 36 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/tictactoe/Board.java (20:71) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/Board.java (20:71) duplicated block id: 60 size: 36 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/tictactoe/Board.java (20:71) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/Board.java (20:71) duplicated block id: 61 size: 36 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/tictactoe/Board.java (20:71) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/Board.java (20:71) duplicated block id: 62 size: 31 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootViewController.swift (21:85) - ios/tutorials/tutorial4/TicTacToe/Root/RootViewController.swift (21:85) duplicated block id: 63 size: 31 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (48:89) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (55:96) duplicated block id: 64 size: 31 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeInteractor.swift (92:146) - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeInteractor.swift (92:146) duplicated block id: 65 size: 31 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeInteractor.swift (92:146) - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (90:144) duplicated block id: 66 size: 30 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeInteractor.swift (95:146) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeInteractor.swift (113:164) duplicated block id: 67 size: 30 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeInteractor.swift (95:146) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeInteractor.swift (113:164) duplicated block id: 68 size: 30 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/res/layout/logged_out_rib.xml (1:34) - android/tutorials/tutorial4/src/main/res/layout/logged_out_rib.xml (1:34) duplicated block id: 69 size: 30 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeInteractor.swift (95:146) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (113:164) duplicated block id: 70 size: 30 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (93:144) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeInteractor.swift (113:164) duplicated block id: 71 size: 30 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeInteractor.swift (95:146) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (113:164) duplicated block id: 72 size: 30 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (93:144) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (113:164) duplicated block id: 73 size: 29 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameBuilder.java (68:113) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameBuilder.java (82:126) duplicated block id: 74 size: 29 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (75:120) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (75:120) duplicated block id: 75 size: 29 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (75:120) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (67:112) duplicated block id: 76 size: 29 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedout/LoggedOutBuilder.java (67:112) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedout/LoggedOutBuilder.java (68:115) duplicated block id: 77 size: 29 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameBuilder.java (78:123) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameBuilder.java (68:113) duplicated block id: 78 size: 29 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameBuilder.java (68:113) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameBuilder.java (78:123) duplicated block id: 79 size: 29 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedout/LoggedOutBuilder.java (67:112) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedout/LoggedOutBuilder.java (68:115) duplicated block id: 80 size: 29 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (67:112) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (75:120) duplicated block id: 81 size: 29 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameBuilder.java (78:123) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameBuilder.java (82:126) duplicated block id: 82 size: 29 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (67:112) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (75:120) duplicated block id: 83 size: 29 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (67:112) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (75:120) duplicated block id: 84 size: 29 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedout/LoggedOutBuilder.java (67:112) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedout/LoggedOutBuilder.java (68:115) duplicated block id: 85 size: 29 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameBuilder.java (68:113) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameBuilder.java (82:126) duplicated block id: 86 size: 28 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeInteractor.swift (20:75) - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeInteractor.swift (20:75) duplicated block id: 87 size: 27 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedout/LoggedOutView.java (32:69) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedout/LoggedOutView.java (32:69) duplicated block id: 88 size: 27 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/Models/ScoreStream.swift (20:64) - ios/tutorials/tutorial4/TicTacToe/Models/ScoreStream.swift (20:64) duplicated block id: 89 size: 26 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameBuilder.swift (19:62) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameBuilder.swift (19:62) duplicated block id: 90 size: 25 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (38:66) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (45:73) duplicated block id: 91 size: 25 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinInteractor.swift (20:69) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinInteractor.swift (20:69) duplicated block id: 92 size: 25 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (45:73) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (38:66) duplicated block id: 93 size: 25 cleaned lines of code in 2 files: - android/tutorials/tutorial1/src/main/java/com/uber/rib/root/RootBuilder.java (32:74) - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/RootBuilder.java (33:75) duplicated block id: 94 size: 24 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (20:69) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutInteractor.swift (20:69) duplicated block id: 95 size: 24 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (20:69) - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutInteractor.swift (20:69) duplicated block id: 96 size: 24 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameViewController.swift (98:130) - ios/tutorials/tutorial4-completed/TicTacToe/ScoreBoard/BasicScoreBoardViewController.swift (80:112) duplicated block id: 97 size: 24 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinBuilder.swift (19:59) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinBuilder.swift (19:59) duplicated block id: 98 size: 24 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameViewController.swift (98:130) - ios/tutorials/tutorial4/TicTacToe/ScoreBoard/BasicScoreBoardViewController.swift (80:112) duplicated block id: 99 size: 24 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutInteractor.swift (20:69) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (20:69) duplicated block id: 100 size: 24 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (45:72) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (46:73) duplicated block id: 101 size: 24 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (38:65) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (46:73) duplicated block id: 102 size: 24 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeBuilder.swift (19:59) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeBuilder.swift (19:59) duplicated block id: 103 size: 24 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutInteractor.swift (20:69) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutInteractor.swift (20:69) duplicated block id: 104 size: 24 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (38:65) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (46:73) duplicated block id: 105 size: 24 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (20:69) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (20:69) duplicated block id: 106 size: 24 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (20:69) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutInteractor.swift (20:69) duplicated block id: 107 size: 24 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/ScoreBoard/BasicScoreBoardBuilder.swift (19:59) - ios/tutorials/tutorial4/TicTacToe/ScoreBoard/BasicScoreBoardBuilder.swift (19:59) duplicated block id: 108 size: 23 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/ScoreBoard/BasicScoreBoardInteractor.swift (20:61) - ios/tutorials/tutorial4/TicTacToe/ScoreBoard/BasicScoreBoardInteractor.swift (20:61) duplicated block id: 109 size: 23 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/Root/RootBuilder.swift (19:58) - ios/tutorials/tutorial4/TicTacToe/Root/RootBuilder.swift (19:58) duplicated block id: 110 size: 23 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootBuilder.swift (19:58) - ios/tutorials/tutorial3/TicTacToe/Root/RootBuilder.swift (19:58) duplicated block id: 111 size: 23 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootRouter.swift (19:52) - ios/tutorials/tutorial3/TicTacToe/Root/RootRouter.swift (19:52) duplicated block id: 112 size: 23 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootBuilder.swift (19:58) - ios/tutorials/tutorial4/TicTacToe/Root/RootBuilder.swift (19:58) duplicated block id: 113 size: 22 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameView.java (31:62) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameView.java (30:61) duplicated block id: 114 size: 22 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/RootRouter.java (25:52) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/RootRouter.java (25:52) duplicated block id: 115 size: 21 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (55:86) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (50:81) duplicated block id: 116 size: 21 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (50:81) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (62:93) duplicated block id: 117 size: 20 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/RootBuilder.java (33:69) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/RootBuilder.java (35:71) duplicated block id: 118 size: 20 cleaned lines of code in 2 files: - android/tutorials/tutorial1/src/main/java/com/uber/rib/root/RootBuilder.java (32:68) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/RootBuilder.java (35:71) duplicated block id: 119 size: 20 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/RootBuilder.java (33:69) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/RootBuilder.java (35:71) duplicated block id: 120 size: 20 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameInteractor.java (27:57) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameInteractor.java (27:57) duplicated block id: 121 size: 20 cleaned lines of code in 2 files: - android/tutorials/tutorial1/src/main/java/com/uber/rib/root/RootBuilder.java (32:68) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/RootBuilder.java (35:71) duplicated block id: 122 size: 20 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/RootBuilder.java (33:69) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/RootBuilder.java (35:71) duplicated block id: 123 size: 20 cleaned lines of code in 2 files: - android/tutorials/tutorial1/src/main/java/com/uber/rib/root/RootBuilder.java (32:68) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/RootBuilder.java (35:71) duplicated block id: 124 size: 20 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameRouter.swift (19:51) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameRouter.swift (19:51) duplicated block id: 125 size: 20 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (34:68) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (35:68) duplicated block id: 126 size: 19 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameBuilder.java (35:67) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameBuilder.java (38:69) duplicated block id: 127 size: 19 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/LoggedIn/LoggedInBuilder.swift (19:55) - ios/tutorials/tutorial4/TicTacToe/LoggedIn/LoggedInBuilder.swift (19:55) duplicated block id: 128 size: 18 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameBuilder.java (33:63) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameBuilder.java (35:65) duplicated block id: 129 size: 18 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/RootRouter.java (31:52) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/RootRouter.java (38:59) duplicated block id: 130 size: 18 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (33:63) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (35:65) duplicated block id: 131 size: 18 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameBuilder.java (33:63) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameBuilder.java (38:68) duplicated block id: 132 size: 18 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (33:63) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (35:65) duplicated block id: 133 size: 18 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (34:69) - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeInteractor.swift (34:69) duplicated block id: 134 size: 18 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeInteractor.swift (34:69) - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (34:69) duplicated block id: 135 size: 18 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (34:64) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (33:63) duplicated block id: 136 size: 18 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootBuilder.swift (19:53) - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootBuilder.swift (19:53) duplicated block id: 137 size: 18 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedout/LoggedOutBuilder.java (33:63) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedout/LoggedOutBuilder.java (33:63) duplicated block id: 138 size: 18 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameBuilder.java (35:65) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameBuilder.java (33:63) duplicated block id: 139 size: 18 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootBuilder.swift (19:53) - ios/tutorials/tutorial3/TicTacToe/Root/RootBuilder.swift (19:53) duplicated block id: 140 size: 18 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/RootRouter.java (31:52) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/RootRouter.java (38:59) duplicated block id: 141 size: 18 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameBuilder.java (33:63) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameBuilder.java (38:68) duplicated block id: 142 size: 18 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootBuilder.swift (19:53) - ios/tutorials/tutorial4/TicTacToe/Root/RootBuilder.swift (19:53) duplicated block id: 143 size: 18 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedout/LoggedOutBuilder.java (33:63) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedout/LoggedOutBuilder.java (33:63) duplicated block id: 144 size: 18 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (33:63) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (34:64) duplicated block id: 145 size: 18 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedout/LoggedOutBuilder.java (33:63) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedout/LoggedOutBuilder.java (33:63) duplicated block id: 146 size: 17 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootRouter.swift (19:43) - ios/tutorials/tutorial4/TicTacToe/Root/RootRouter.swift (19:43) duplicated block id: 147 size: 17 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootInteractor.swift (20:59) - ios/tutorials/tutorial4/TicTacToe/Root/RootInteractor.swift (20:59) duplicated block id: 148 size: 17 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootInteractor.swift (20:59) - ios/tutorials/tutorial3/TicTacToe/Root/RootInteractor.swift (20:59) duplicated block id: 149 size: 17 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameInteractor.swift (20:59) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameInteractor.swift (20:59) duplicated block id: 150 size: 17 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/Root/RootInteractor.swift (20:59) - ios/tutorials/tutorial4/TicTacToe/Root/RootInteractor.swift (20:59) duplicated block id: 151 size: 16 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (71:99) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (81:109) duplicated block id: 152 size: 16 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (81:109) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (71:99) duplicated block id: 153 size: 16 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootViewController.swift (21:60) - ios/tutorials/tutorial3/TicTacToe/Root/RootViewController.swift (21:60) duplicated block id: 154 size: 15 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (21:48) - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (21:48) duplicated block id: 155 size: 15 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/Root/RootRouter.swift (29:50) - ios/tutorials/tutorial4/TicTacToe/Root/RootRouter.swift (28:49) duplicated block id: 156 size: 15 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedout/LoggedOutInteractor.java (29:45) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedout/LoggedOutInteractor.java (30:46) duplicated block id: 157 size: 15 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameViewController.swift (64:79) - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (48:63) duplicated block id: 158 size: 15 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedIn/LoggedInBuilder.swift (33:59) - ios/tutorials/tutorial4/TicTacToe/LoggedIn/LoggedInBuilder.swift (43:68) duplicated block id: 159 size: 15 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/LoggedIn/LoggedInInteractor.swift (32:64) - ios/tutorials/tutorial4/TicTacToe/LoggedIn/LoggedInInteractor.swift (32:64) duplicated block id: 160 size: 15 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameView.java (56:76) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameView.java (59:79) duplicated block id: 161 size: 15 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootRouter.swift (29:50) - ios/tutorials/tutorial4/TicTacToe/Root/RootRouter.swift (28:49) duplicated block id: 162 size: 14 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameView.java (34:54) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameView.java (38:58) duplicated block id: 163 size: 14 cleaned lines of code in 2 files: - android/tooling/rib-intellij-plugin/src/main/kotlin/com/uber/intellij/plugin/android/rib/RibHierarchyBrowser.kt (115:139) - android/tooling/rib-intellij-plugin/src/main/kotlin/com/uber/intellij/plugin/android/rib/RibViewBrowser.kt (85:109) duplicated block id: 164 size: 14 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameView.java (33:53) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameView.java (38:58) duplicated block id: 165 size: 14 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootInteractor.swift (20:52) - ios/tutorials/tutorial2/TicTacToe/Root/RootInteractor.swift (20:52) duplicated block id: 166 size: 14 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/LoggedInRouter.java (34:49) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/LoggedInRouter.java (34:49) duplicated block id: 167 size: 14 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/RootBuilder.java (85:107) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/RootBuilder.java (99:123) duplicated block id: 168 size: 14 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/RootBuilder.java (85:107) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/RootBuilder.java (99:123) duplicated block id: 169 size: 14 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/LoggedInRouter.java (34:49) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/LoggedInRouter.java (34:49) duplicated block id: 170 size: 14 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/LoggedIn/RandomWinAdapter.swift (19:41) - ios/tutorials/tutorial4/TicTacToe/LoggedIn/RandomWinAdapter.swift (19:41) duplicated block id: 171 size: 14 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/RootBuilder.java (85:107) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/RootBuilder.java (99:123) duplicated block id: 172 size: 14 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootRouter.swift (19:39) - ios/tutorials/tutorial2/TicTacToe/Root/RootRouter.swift (19:39) duplicated block id: 173 size: 14 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/LoggedIn/TicTacToeAdapter.swift (19:39) - ios/tutorials/tutorial4/TicTacToe/LoggedIn/TicTacToeAdapter.swift (19:39) duplicated block id: 174 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutBuilder.swift (19:46) - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutBuilder.swift (19:46) duplicated block id: 175 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutBuilder.swift (19:46) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutBuilder.swift (19:46) duplicated block id: 176 size: 13 cleaned lines of code in 2 files: - android/tutorials/tutorial1/src/main/java/com/uber/rib/root/RootBuilder.java (83:103) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/RootBuilder.java (101:123) duplicated block id: 177 size: 13 cleaned lines of code in 2 files: - android/tutorials/tutorial1/src/main/java/com/uber/rib/root/RootBuilder.java (83:103) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/RootBuilder.java (101:123) duplicated block id: 178 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootInteractor.swift (24:52) - ios/tutorials/tutorial3/TicTacToe/Root/RootInteractor.swift (24:52) duplicated block id: 179 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootInteractor.swift (24:52) - ios/tutorials/tutorial4/TicTacToe/Root/RootInteractor.swift (24:52) duplicated block id: 180 size: 13 cleaned lines of code in 2 files: - android/tutorials/tutorial1/src/main/java/com/uber/rib/root/RootBuilder.java (83:103) - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/RootBuilder.java (87:107) duplicated block id: 181 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutBuilder.swift (19:46) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutBuilder.swift (19:46) duplicated block id: 182 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutInteractor.swift (33:60) - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutInteractor.swift (33:60) duplicated block id: 183 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootInteractor.swift (24:52) - ios/tutorials/tutorial3/TicTacToe/Root/RootInteractor.swift (24:52) duplicated block id: 184 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (43:67) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (43:67) duplicated block id: 185 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootInteractor.swift (24:52) - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootInteractor.swift (24:52) duplicated block id: 186 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeInteractor.swift (43:67) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (43:67) duplicated block id: 187 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeInteractor.swift (43:67) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeInteractor.swift (43:67) duplicated block id: 188 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeBuilder.swift (19:46) - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeBuilder.swift (19:46) duplicated block id: 189 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutInteractor.swift (33:60) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutInteractor.swift (33:60) duplicated block id: 190 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutBuilder.swift (19:46) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutBuilder.swift (19:46) duplicated block id: 191 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutBuilder.swift (19:46) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutBuilder.swift (19:46) duplicated block id: 192 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeInteractor.swift (43:67) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (43:67) duplicated block id: 193 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutBuilder.swift (19:46) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutBuilder.swift (19:46) duplicated block id: 194 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutBuilder.swift (19:46) - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutBuilder.swift (19:46) duplicated block id: 195 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootInteractor.swift (24:52) - ios/tutorials/tutorial4/TicTacToe/Root/RootInteractor.swift (24:52) duplicated block id: 196 size: 13 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (111:127) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (88:104) duplicated block id: 197 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutBuilder.swift (19:46) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutBuilder.swift (19:46) duplicated block id: 198 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (43:67) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeInteractor.swift (43:67) duplicated block id: 199 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootInteractor.swift (24:52) - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootInteractor.swift (24:52) duplicated block id: 200 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutBuilder.swift (19:46) - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutBuilder.swift (19:46) duplicated block id: 201 size: 13 cleaned lines of code in 2 files: - android/tutorials/tutorial1/src/main/java/com/uber/rib/root/RootBuilder.java (83:103) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/RootBuilder.java (101:123) duplicated block id: 202 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutInteractor.swift (33:60) - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (33:60) duplicated block id: 203 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutBuilder.swift (19:46) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutBuilder.swift (19:46) duplicated block id: 204 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutInteractor.swift (33:60) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (33:60) duplicated block id: 205 size: 13 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeInteractor.swift (43:67) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeInteractor.swift (43:67) duplicated block id: 206 size: 12 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootViewController.swift (21:48) - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootViewController.swift (21:48) duplicated block id: 207 size: 12 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameViewController.swift (82:95) - ios/tutorials/tutorial4/TicTacToe/ScoreBoard/BasicScoreBoardViewController.swift (65:78) duplicated block id: 208 size: 12 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootViewController.swift (21:48) - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootViewController.swift (21:48) duplicated block id: 209 size: 12 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/Root/RootRouter.swift (29:44) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootRouter.swift (28:43) duplicated block id: 210 size: 12 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootViewController.swift (21:48) - ios/tutorials/tutorial3/TicTacToe/Root/RootViewController.swift (21:48) duplicated block id: 211 size: 12 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootViewController.swift (21:48) - ios/tutorials/tutorial3/TicTacToe/Root/RootViewController.swift (21:48) duplicated block id: 212 size: 12 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootViewController.swift (21:48) - ios/tutorials/tutorial2/TicTacToe/Root/RootViewController.swift (21:48) duplicated block id: 213 size: 12 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameViewController.swift (82:95) - ios/tutorials/tutorial4-completed/TicTacToe/ScoreBoard/BasicScoreBoardViewController.swift (65:78) duplicated block id: 214 size: 12 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootRouter.swift (29:44) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootRouter.swift (28:43) duplicated block id: 215 size: 11 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameView.java (33:49) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameView.java (38:54) duplicated block id: 216 size: 11 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/AppStart/AppDelegate.swift (22:48) - ios/tutorials/tutorial3/TicTacToe/AppStart/AppDelegate.swift (22:48) duplicated block id: 217 size: 11 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/AppStart/AppDelegate.swift (22:48) - ios/tutorials/tutorial4/TicTacToe/AppStart/AppDelegate.swift (22:48) duplicated block id: 218 size: 11 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (31:50) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (33:52) duplicated block id: 219 size: 11 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/AppStart/AppDelegate.swift (22:48) - ios/tutorials/tutorial3-completed/TicTacToe/AppStart/AppDelegate.swift (22:48) duplicated block id: 220 size: 11 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameView.java (33:49) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameView.java (39:55) duplicated block id: 221 size: 11 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/AppStart/AppDelegate.swift (22:48) - ios/tutorials/tutorial4/TicTacToe/AppStart/AppDelegate.swift (22:48) duplicated block id: 222 size: 11 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/AppStart/AppDelegate.swift (21:47) - ios/tutorials/tutorial4/TicTacToe/AppStart/AppDelegate.swift (22:48) duplicated block id: 223 size: 11 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/res/layout/logged_out_rib.xml (1:11) - android/tutorials/tutorial3-completed/src/main/res/layout/logged_out_rib.xml (1:13) duplicated block id: 224 size: 11 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/res/layout/logged_out_rib.xml (1:13) - android/tutorials/tutorial3/src/main/res/layout/logged_out_rib.xml (1:11) duplicated block id: 225 size: 11 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/res/layout/logged_out_rib.xml (1:11) - android/tutorials/tutorial4/src/main/res/layout/logged_out_rib.xml (1:13) duplicated block id: 226 size: 11 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/AppStart/AppDelegate.swift (21:47) - ios/tutorials/tutorial3/TicTacToe/AppStart/AppDelegate.swift (22:48) duplicated block id: 227 size: 11 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/res/layout/logged_out_rib.xml (1:11) - android/tutorials/tutorial4/src/main/res/layout/logged_out_rib.xml (1:13) duplicated block id: 228 size: 11 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/AppStart/AppDelegate.swift (21:47) - ios/tutorials/tutorial3-completed/TicTacToe/AppStart/AppDelegate.swift (22:48) duplicated block id: 229 size: 11 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedIn/LoggedInInteractor.swift (20:38) - ios/tutorials/tutorial3/TicTacToe/LoggedIn/LoggedInInteractor.swift (20:38) duplicated block id: 230 size: 11 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (31:50) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeViewController.swift (33:52) duplicated block id: 231 size: 11 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/AppStart/AppDelegate.swift (22:48) - ios/tutorials/tutorial4/TicTacToe/AppStart/AppDelegate.swift (22:48) duplicated block id: 232 size: 11 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/AppStart/AppDelegate.swift (22:48) - ios/tutorials/tutorial3/TicTacToe/AppStart/AppDelegate.swift (22:48) duplicated block id: 233 size: 11 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/res/layout/logged_out_rib.xml (1:11) - android/tutorials/tutorial3/src/main/res/layout/logged_out_rib.xml (1:11) duplicated block id: 234 size: 11 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/AppStart/AppDelegate.swift (21:47) - ios/tutorials/tutorial2/TicTacToe/AppStart/AppDelegate.swift (22:48) duplicated block id: 235 size: 11 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (33:52) - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (31:50) duplicated block id: 236 size: 10 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameInteractor.swift (33:52) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameInteractor.swift (33:52) duplicated block id: 237 size: 10 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootViewController.swift (21:42) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootViewController.swift (21:42) duplicated block id: 238 size: 10 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootInteractor.swift (35:58) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootInteractor.swift (35:58) duplicated block id: 239 size: 10 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootViewController.swift (21:42) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootViewController.swift (21:42) duplicated block id: 240 size: 10 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/Root/RootInteractor.swift (35:58) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootInteractor.swift (35:58) duplicated block id: 241 size: 10 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameView.java (33:48) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameView.java (43:58) duplicated block id: 242 size: 10 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/BoardCoordinate.java (18:33) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/tictactoe/BoardCoordinate.java (18:33) duplicated block id: 243 size: 10 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Models/ScoreStream.swift (48:62) - ios/tutorials/tutorial4/TicTacToe/Models/ScoreStream.swift (50:64) duplicated block id: 244 size: 10 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Models/ScoreStream.swift (48:62) - ios/tutorials/tutorial4-completed/TicTacToe/Models/ScoreStream.swift (50:64) duplicated block id: 245 size: 10 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/tictactoe/BoardCoordinate.java (18:33) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/BoardCoordinate.java (18:33) duplicated block id: 246 size: 10 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/tictactoe/BoardCoordinate.java (18:33) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/BoardCoordinate.java (18:33) duplicated block id: 247 size: 10 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/tictactoe/BoardCoordinate.java (18:33) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/tictactoe/BoardCoordinate.java (18:33) duplicated block id: 248 size: 10 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/tictactoe/BoardCoordinate.java (18:33) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/BoardCoordinate.java (18:33) duplicated block id: 249 size: 10 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootInteractor.swift (35:58) - ios/tutorials/tutorial4/TicTacToe/Root/RootInteractor.swift (35:58) duplicated block id: 250 size: 10 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/Root/RootViewController.swift (21:42) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootViewController.swift (21:42) duplicated block id: 251 size: 10 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/Root/RootViewController.swift (21:42) - ios/tutorials/tutorial4/TicTacToe/Root/RootViewController.swift (21:42) duplicated block id: 252 size: 10 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToeTests/TicTacToeMocks.swift (51:62) - ios/tutorials/tutorial2/TicTacToeTests/TicTacToeMocks.swift (203:214) duplicated block id: 253 size: 10 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameInteractor.swift (33:52) - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameInteractor.swift (33:52) duplicated block id: 254 size: 10 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/BoardCoordinate.java (18:33) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/BoardCoordinate.java (18:33) duplicated block id: 255 size: 10 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootViewController.swift (21:42) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootViewController.swift (21:42) duplicated block id: 256 size: 10 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootViewController.swift (21:42) - ios/tutorials/tutorial4/TicTacToe/Root/RootViewController.swift (21:42) duplicated block id: 257 size: 10 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootViewController.swift (21:42) - ios/tutorials/tutorial4/TicTacToe/Root/RootViewController.swift (21:42) duplicated block id: 258 size: 10 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootRouter.swift (52:69) - ios/tutorials/tutorial4/TicTacToe/Root/RootRouter.swift (51:68) duplicated block id: 259 size: 10 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (77:90) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (78:91) duplicated block id: 260 size: 10 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootViewController.swift (21:42) - ios/tutorials/tutorial4/TicTacToe/Root/RootViewController.swift (21:42) duplicated block id: 261 size: 9 cleaned lines of code in 2 files: - android/tooling/rib-intellij-plugin/src/main/kotlin/com/uber/intellij/plugin/android/rib/ui/RibHierarchyTreeStructure.kt (83:91) - android/tooling/rib-intellij-plugin/src/main/kotlin/com/uber/intellij/plugin/android/rib/ui/RibHierarchyTreeStructure.kt (95:103) duplicated block id: 262 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinViewController.swift (31:43) - ios/tutorials/tutorial4/TicTacToe/ScoreBoard/BasicScoreBoardViewController.swift (31:43) duplicated block id: 263 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeInteractor.swift (80:92) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (85:97) duplicated block id: 264 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (78:90) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeInteractor.swift (85:97) duplicated block id: 265 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeInteractor.swift (80:92) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeInteractor.swift (85:97) duplicated block id: 266 size: 9 cleaned lines of code in 2 files: - ios/RIBsTests/Workflow/WorkflowTests.swift (106:117) - ios/RIBsTests/Workflow/WorkflowTests.swift (128:139) duplicated block id: 267 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (29:41) - ios/tutorials/tutorial4-completed/TicTacToe/ScoreBoard/BasicScoreBoardViewController.swift (31:43) duplicated block id: 268 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (29:41) - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinViewController.swift (31:43) duplicated block id: 269 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToeTests/TicTacToeMocks.swift (68:81) - ios/tutorials/tutorial2/TicTacToeTests/TicTacToeMocks.swift (218:231) duplicated block id: 270 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (31:48) - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (33:50) duplicated block id: 271 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinViewController.swift (31:43) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (29:41) duplicated block id: 272 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinViewController.swift (31:43) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeViewController.swift (29:41) duplicated block id: 273 size: 9 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/LoggedInRouter.java (53:63) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/LoggedInRouter.java (53:63) duplicated block id: 274 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (29:41) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinViewController.swift (31:43) duplicated block id: 275 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootInteractor.swift (35:52) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootInteractor.swift (35:52) duplicated block id: 276 size: 9 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedout/LoggedOutInteractor.java (29:39) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedout/LoggedOutInteractor.java (29:39) duplicated block id: 277 size: 9 cleaned lines of code in 2 files: - ios/RIBsTests/Mocks.swift (73:83) - ios/tutorials/tutorial2/TicTacToeTests/TicTacToeMocks.swift (204:214) duplicated block id: 278 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/Models/PlayerType.swift (19:28) - ios/tutorials/tutorial4/TicTacToe/Models/PlayerType.swift (19:28) duplicated block id: 279 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (29:41) - ios/tutorials/tutorial4/TicTacToe/ScoreBoard/BasicScoreBoardViewController.swift (31:43) duplicated block id: 280 size: 9 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/LoggedInRouter.java (53:63) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/LoggedInRouter.java (53:63) duplicated block id: 281 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeBuilder.swift (38:51) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeBuilder.swift (42:55) duplicated block id: 282 size: 9 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/res/values/ub__strings.xml (1:9) - android/tutorials/tutorial3/src/main/res/values/ub__strings.xml (1:9) duplicated block id: 283 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinViewController.swift (31:43) - ios/tutorials/tutorial4/TicTacToe/ScoreBoard/BasicScoreBoardViewController.swift (31:43) duplicated block id: 284 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial4/TicTacToe/ScoreBoard/BasicScoreBoardViewController.swift (31:43) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeViewController.swift (29:41) duplicated block id: 285 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/ScoreBoard/BasicScoreBoardViewController.swift (31:43) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (29:41) duplicated block id: 286 size: 9 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/RootInteractor.java (26:39) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/RootInteractor.java (26:39) duplicated block id: 287 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (29:41) - ios/tutorials/tutorial4/TicTacToe/ScoreBoard/BasicScoreBoardViewController.swift (31:43) duplicated block id: 288 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (31:48) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeViewController.swift (33:50) duplicated block id: 289 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootInteractor.swift (35:52) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootInteractor.swift (35:52) duplicated block id: 290 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (29:41) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinViewController.swift (31:43) duplicated block id: 291 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootRouter.swift (56:70) - ios/tutorials/tutorial3/TicTacToe/Root/RootRouter.swift (56:70) duplicated block id: 292 size: 9 cleaned lines of code in 2 files: - ios/RIBsTests/Mocks.swift (73:83) - ios/tutorials/tutorial2/TicTacToeTests/TicTacToeMocks.swift (52:62) duplicated block id: 293 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeBuilder.swift (38:51) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeBuilder.swift (42:55) duplicated block id: 294 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/ScoreBoard/BasicScoreBoardViewController.swift (31:43) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinViewController.swift (31:43) duplicated block id: 295 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (31:48) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (33:50) duplicated block id: 296 size: 9 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedout/LoggedOutInteractor.java (29:39) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedout/LoggedOutInteractor.java (30:40) duplicated block id: 297 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (78:90) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (85:97) duplicated block id: 298 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinViewController.swift (31:43) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeViewController.swift (29:41) duplicated block id: 299 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinViewController.swift (31:43) - ios/tutorials/tutorial4-completed/TicTacToe/ScoreBoard/BasicScoreBoardViewController.swift (31:43) duplicated block id: 300 size: 9 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/ScoreBoard/BasicScoreBoardViewController.swift (31:43) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeViewController.swift (29:41) duplicated block id: 301 size: 9 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/res/layout/logged_out_rib.xml (14:22) - android/tutorials/tutorial3/src/main/res/layout/logged_out_rib.xml (20:28) duplicated block id: 302 size: 8 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameInteractor.java (52:60) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameInteractor.java (38:46) duplicated block id: 303 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootBuilder.swift (19:37) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootBuilder.swift (19:37) duplicated block id: 304 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootBuilder.swift (19:37) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootBuilder.swift (19:37) duplicated block id: 305 size: 8 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameInteractor.java (38:46) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameInteractor.java (52:60) duplicated block id: 306 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeRouter.swift (19:33) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeRouter.swift (19:33) duplicated block id: 307 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutRouter.swift (19:33) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutRouter.swift (19:33) duplicated block id: 308 size: 8 cleaned lines of code in 2 files: - ios/RIBsTests/Workflow/WorkflowTests.swift (81:91) - ios/RIBsTests/Workflow/WorkflowTests.swift (128:138) duplicated block id: 309 size: 8 cleaned lines of code in 2 files: - ios/RIBsTests/Workflow/WorkflowTests.swift (81:91) - ios/RIBsTests/Workflow/WorkflowTests.swift (106:116) duplicated block id: 310 size: 8 cleaned lines of code in 2 files: - android/libraries/rib-debug-utils/build.gradle.kts (17:26) - android/libraries/rib-test/build.gradle.kts (17:26) duplicated block id: 311 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutRouter.swift (19:33) - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutRouter.swift (19:33) duplicated block id: 312 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutRouter.swift (19:33) - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutRouter.swift (19:33) duplicated block id: 313 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/LoggedIn/Game.swift (19:30) - ios/tutorials/tutorial4/TicTacToe/LoggedIn/Game.swift (19:30) duplicated block id: 314 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutRouter.swift (19:33) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutRouter.swift (19:33) duplicated block id: 315 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutRouter.swift (19:33) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutRouter.swift (19:33) duplicated block id: 316 size: 8 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (29:38) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (30:39) duplicated block id: 317 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeRouter.swift (19:33) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeRouter.swift (19:33) duplicated block id: 318 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutRouter.swift (19:33) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutRouter.swift (19:33) duplicated block id: 319 size: 8 cleaned lines of code in 2 files: - ios/RIBsTests/Mocks.swift (87:97) - ios/tutorials/tutorial2/TicTacToeTests/TicTacToeMocks.swift (221:231) duplicated block id: 320 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootBuilder.swift (19:37) - ios/tutorials/tutorial4/TicTacToe/Root/RootBuilder.swift (19:37) duplicated block id: 321 size: 8 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (137:148) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (108:119) duplicated block id: 322 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeRouter.swift (19:33) - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeRouter.swift (19:33) duplicated block id: 323 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeRouter.swift (19:33) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeRouter.swift (19:33) duplicated block id: 324 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeRouter.swift (19:33) - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeRouter.swift (19:33) duplicated block id: 325 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/Root/RootBuilder.swift (19:37) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootBuilder.swift (19:37) duplicated block id: 326 size: 8 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (108:119) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (190:200) duplicated block id: 327 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutRouter.swift (19:33) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutRouter.swift (19:33) duplicated block id: 328 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeRouter.swift (19:33) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeRouter.swift (19:33) duplicated block id: 329 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutRouter.swift (19:33) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutRouter.swift (19:33) duplicated block id: 330 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameViewController.swift (32:44) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeViewController.swift (31:43) duplicated block id: 331 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinRouter.swift (19:33) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinRouter.swift (19:33) duplicated block id: 332 size: 8 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedout/LoggedOutView.java (29:43) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedout/LoggedOutView.java (30:44) duplicated block id: 333 size: 8 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (98:112) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (99:113) duplicated block id: 334 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutRouter.swift (19:33) - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutRouter.swift (19:33) duplicated block id: 335 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeRouter.swift (19:33) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeRouter.swift (19:33) duplicated block id: 336 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameRouter.swift (19:33) - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameRouter.swift (19:33) duplicated block id: 337 size: 8 cleaned lines of code in 2 files: - ios/RIBsTests/Mocks.swift (87:97) - ios/tutorials/tutorial2/TicTacToeTests/TicTacToeMocks.swift (71:81) duplicated block id: 338 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameViewController.swift (32:44) - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (31:43) duplicated block id: 339 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameViewController.swift (133:143) - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (66:76) duplicated block id: 340 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeRouter.swift (19:33) - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeRouter.swift (19:33) duplicated block id: 341 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootRouter.swift (61:70) - ios/tutorials/tutorial4/TicTacToe/Root/RootRouter.swift (60:69) duplicated block id: 342 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeRouter.swift (19:33) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeRouter.swift (19:33) duplicated block id: 343 size: 8 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (137:148) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (190:200) duplicated block id: 344 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/Root/RootRouter.swift (56:69) - ios/tutorials/tutorial4/TicTacToe/Root/RootRouter.swift (55:68) duplicated block id: 345 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutRouter.swift (19:33) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutRouter.swift (19:33) duplicated block id: 346 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameViewController.swift (32:44) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (31:43) duplicated block id: 347 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/ScoreBoard/BasicScoreBoardRouter.swift (19:33) - ios/tutorials/tutorial4/TicTacToe/ScoreBoard/BasicScoreBoardRouter.swift (19:33) duplicated block id: 348 size: 8 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeRouter.swift (19:33) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeRouter.swift (19:33) duplicated block id: 349 size: 7 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/RootView.java (24:35) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/RootView.java (24:35) duplicated block id: 350 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameViewController.swift (34:45) - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (32:43) duplicated block id: 351 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) - ios/tutorials/tutorial3/TicTacToe/Root/RootViewController.swift (31:42) duplicated block id: 352 size: 7 cleaned lines of code in 2 files: - ios/tooling/RIB.xctemplate/Default/___FILEBASENAME___Builder.swift (24:35) - ios/tooling/RIB.xctemplate/ownsView/___FILEBASENAME___Builder.swift (17:28) duplicated block id: 353 size: 7 cleaned lines of code in 2 files: - android/tutorials/tutorial1/src/main/java/com/uber/rib/root/RootView.java (24:35) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/RootView.java (24:35) duplicated block id: 354 size: 7 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/res/layout/logged_out_rib.xml (27:34) - android/tutorials/tutorial3/src/main/res/layout/logged_out_rib.xml (22:28) duplicated block id: 355 size: 7 cleaned lines of code in 2 files: - android/libraries/rib-router-navigator/src/main/kotlin/com/uber/rib/core/RouterNavigator.kt (110:131) - android/libraries/rib-router-navigator/src/main/kotlin/com/uber/rib/core/RouterNavigator.kt (131:151) duplicated block id: 356 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedIn/LoggedInBuilder.swift (61:68) - ios/tutorials/tutorial3/TicTacToe/LoggedIn/LoggedInBuilder.swift (45:52) duplicated block id: 357 size: 7 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/RootInteractor.java (25:33) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/RootInteractor.java (26:34) duplicated block id: 358 size: 7 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/RootInteractor.java (29:39) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/RootInteractor.java (30:40) duplicated block id: 359 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootViewController.swift (31:42) duplicated block id: 360 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootViewController.swift (31:42) - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) duplicated block id: 361 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootRouter.swift (61:69) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootRouter.swift (61:69) duplicated block id: 362 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:41) - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (31:42) duplicated block id: 363 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootViewController.swift (31:42) duplicated block id: 364 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedIn/LoggedInInteractor.swift (46:61) - ios/tutorials/tutorial3/TicTacToe/LoggedIn/LoggedInInteractor.swift (44:59) duplicated block id: 365 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootViewController.swift (31:42) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) duplicated block id: 366 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootViewController.swift (31:42) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) duplicated block id: 367 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootViewController.swift (31:42) - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) duplicated block id: 368 size: 7 cleaned lines of code in 2 files: - android/tutorials/tutorial1/src/main/java/com/uber/rib/root/RootView.java (24:35) - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/RootView.java (24:35) duplicated block id: 369 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameInteractor.swift (42:51) - ios/tutorials/tutorial4/TicTacToe/ScoreBoard/BasicScoreBoardInteractor.swift (40:49) duplicated block id: 370 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) - ios/tutorials/tutorial4/TicTacToe/Root/RootViewController.swift (31:42) duplicated block id: 371 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameViewController.swift (32:42) - ios/tutorials/tutorial4-completed/TicTacToe/ScoreBoard/BasicScoreBoardViewController.swift (33:43) duplicated block id: 372 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameViewController.swift (32:42) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinViewController.swift (33:43) duplicated block id: 373 size: 7 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/RootInteractor.java (25:33) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/RootInteractor.java (26:34) duplicated block id: 374 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) - ios/tutorials/tutorial3/TicTacToe/Root/RootViewController.swift (31:42) duplicated block id: 375 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootViewController.swift (31:42) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) duplicated block id: 376 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameInteractor.swift (42:51) - ios/tutorials/tutorial4-completed/TicTacToe/ScoreBoard/BasicScoreBoardInteractor.swift (40:49) duplicated block id: 377 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootViewController.swift (31:42) duplicated block id: 378 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootViewController.swift (31:42) - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) duplicated block id: 379 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) - ios/tutorials/tutorial4/TicTacToe/Root/RootViewController.swift (31:42) duplicated block id: 380 size: 7 cleaned lines of code in 2 files: - android/libraries/rib-coroutines-test/build.gradle.kts (17:25) - android/libraries/rib-debug-utils/build.gradle.kts (17:25) duplicated block id: 381 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootViewController.swift (31:42) duplicated block id: 382 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootViewController.swift (31:42) - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) duplicated block id: 383 size: 7 cleaned lines of code in 2 files: - android/tutorials/tutorial1/src/main/java/com/uber/rib/root/RootView.java (24:35) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/RootView.java (24:35) duplicated block id: 384 size: 7 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/RootView.java (24:35) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/RootView.java (24:35) duplicated block id: 385 size: 7 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/RootView.java (24:35) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/RootView.java (24:35) duplicated block id: 386 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootViewController.swift (31:42) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) duplicated block id: 387 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootViewController.swift (31:42) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) duplicated block id: 388 size: 7 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (88:99) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (99:110) duplicated block id: 389 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) - ios/tutorials/tutorial4/TicTacToe/Root/RootViewController.swift (31:42) duplicated block id: 390 size: 7 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/res/layout/logged_out_rib.xml (16:22) - android/tutorials/tutorial4/src/main/res/layout/logged_out_rib.xml (27:34) duplicated block id: 391 size: 7 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedout/LoggedOutInteractor.java (33:40) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedout/LoggedOutInteractor.java (34:41) duplicated block id: 392 size: 7 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/RootView.java (24:35) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/RootView.java (24:35) duplicated block id: 393 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameViewController.swift (32:42) - ios/tutorials/tutorial4/TicTacToe/ScoreBoard/BasicScoreBoardViewController.swift (33:43) duplicated block id: 394 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) - ios/tutorials/tutorial3/TicTacToe/Root/RootViewController.swift (31:42) duplicated block id: 395 size: 7 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (88:99) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (99:110) duplicated block id: 396 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootViewController.swift (31:42) - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) duplicated block id: 397 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootViewController.swift (31:42) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) duplicated block id: 398 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedIn/LoggedInBuilder.swift (33:46) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedIn/LoggedInBuilder.swift (43:55) duplicated block id: 399 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/Root/RootViewController.swift (31:42) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) duplicated block id: 400 size: 7 cleaned lines of code in 2 files: - android/tutorials/tutorial1/src/main/java/com/uber/rib/root/RootView.java (24:35) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/RootView.java (24:35) duplicated block id: 401 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/Root/RootRouter.swift (61:69) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootRouter.swift (61:69) duplicated block id: 402 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (31:42) - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:41) duplicated block id: 403 size: 7 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/RootView.java (24:35) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/RootView.java (24:35) duplicated block id: 404 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameViewController.swift (32:42) - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinViewController.swift (33:43) duplicated block id: 405 size: 7 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/res/layout/logged_out_rib.xml (16:22) - android/tutorials/tutorial3-completed/src/main/res/layout/logged_out_rib.xml (27:34) duplicated block id: 406 size: 7 cleaned lines of code in 2 files: - android/tooling/rib-intellij-plugin/src/main/kotlin/com/uber/intellij/plugin/android/rib/RibHierarchyPanel.kt (84:90) - android/tooling/rib-intellij-plugin/src/main/kotlin/com/uber/intellij/plugin/android/rib/RibHierarchyPanel.kt (106:112) duplicated block id: 407 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) - ios/tutorials/tutorial2/TicTacToe/Root/RootViewController.swift (31:42) duplicated block id: 408 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootViewController.swift (31:42) - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) duplicated block id: 409 size: 7 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/RootInteractor.java (29:39) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/RootInteractor.java (30:40) duplicated block id: 410 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) - ios/tutorials/tutorial4/TicTacToe/Root/RootViewController.swift (31:42) duplicated block id: 411 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootViewController.swift (31:42) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) duplicated block id: 412 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootViewController.swift (31:42) duplicated block id: 413 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootViewController.swift (31:42) duplicated block id: 414 size: 7 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (119:129) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (172:182) duplicated block id: 415 size: 7 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/res/layout/logged_out_rib.xml (22:28) - android/tutorials/tutorial4/src/main/res/layout/logged_out_rib.xml (27:34) duplicated block id: 416 size: 7 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/RootView.java (24:35) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/RootView.java (24:35) duplicated block id: 417 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/Root/RootViewController.swift (31:42) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) duplicated block id: 418 size: 7 cleaned lines of code in 2 files: - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:42) - ios/tutorials/tutorial4/TicTacToe/Root/RootViewController.swift (31:42) duplicated block id: 419 size: 7 cleaned lines of code in 2 files: - android/libraries/rib-coroutines-test/build.gradle.kts (17:25) - android/libraries/rib-test/build.gradle.kts (17:25) duplicated block id: 420 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 421 size: 6 cleaned lines of code in 2 files: - ios/tooling/RIB.xctemplate/ownsView/___FILEBASENAME___Interactor.swift (27:37) - ios/tutorials/tutorial1/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 422 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinInteractor.swift (40:47) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeInteractor.swift (41:48) duplicated block id: 423 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 424 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/res/layout/off_game_rib.xml (55:60) - android/tutorials/tutorial4/src/main/res/layout/game_button.xml (3:8) duplicated block id: 425 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 426 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 427 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (31:40) - ios/tutorials/tutorial4/TicTacToe/Root/RootViewController.swift (31:40) duplicated block id: 428 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameBuilder.swift (26:35) - ios/tutorials/tutorial4-completed/TicTacToe/ScoreBoard/BasicScoreBoardBuilder.swift (27:36) duplicated block id: 429 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/AppStart/AppDelegate.swift (21:36) - ios/tutorials/tutorial4-completed/TicTacToe/AppStart/AppDelegate.swift (22:37) duplicated block id: 430 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeBuilder.swift (31:41) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeBuilder.swift (42:52) duplicated block id: 431 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameBuilder.swift (41:50) - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameBuilder.swift (31:41) duplicated block id: 432 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial1/src/main/java/com/uber/rib/root/RootInteractor.java (25:32) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/RootInteractor.java (26:33) duplicated block id: 433 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 434 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/Root/RootBuilder.swift (48:54) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootBuilder.swift (48:54) duplicated block id: 435 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootViewController.swift (31:40) - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:39) duplicated block id: 436 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 437 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 438 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 439 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 440 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (33:43) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameViewController.swift (33:43) duplicated block id: 441 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeBuilder.swift (31:41) - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeBuilder.swift (38:48) duplicated block id: 442 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootBuilder.swift (31:41) - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootBuilder.swift (37:47) duplicated block id: 443 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/RootBuilder.java (69:75) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/RootBuilder.java (77:83) duplicated block id: 444 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 445 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/res/values/ub__strings.xml (4:9) - android/tutorials/tutorial4/src/main/res/values/ub__strings.xml (4:9) duplicated block id: 446 size: 6 cleaned lines of code in 2 files: - ios/tooling/RIB.xctemplate/ownsView/___FILEBASENAME___Interactor.swift (27:37) - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 447 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:39) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:40) duplicated block id: 448 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameInteractor.swift (59:64) - ios/tutorials/tutorial4/TicTacToe/ScoreBoard/BasicScoreBoardInteractor.swift (56:61) duplicated block id: 449 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:39) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootViewController.swift (31:40) duplicated block id: 450 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameInteractor.java (37:43) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (38:44) duplicated block id: 451 size: 6 cleaned lines of code in 2 files: - android/libraries/rib-base/src/main/kotlin/com/uber/rib/core/Worker.kt (16:38) - android/libraries/rib-base/src/main/kotlin/com/uber/rib/core/WorkerUnbinder.kt (16:26) duplicated block id: 452 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/AppStart/AppDelegate.swift (22:37) - ios/tutorials/tutorial4-completed/TicTacToe/AppStart/AppDelegate.swift (22:37) duplicated block id: 453 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeInteractor.swift (81:90) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (86:95) duplicated block id: 454 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/randomWinner/RandomWinnerInteractor.java (33:39) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (38:44) duplicated block id: 455 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 456 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 457 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 458 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/MutableScoreStream.java (36:46) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/MutableScoreStream.java (37:47) duplicated block id: 459 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (31:41) - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameViewController.swift (33:43) duplicated block id: 460 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 461 size: 6 cleaned lines of code in 2 files: - ios/tooling/RIB.xctemplate/ownsView/___FILEBASENAME___Interactor.swift (27:37) - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 462 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/res/layout/off_game_rib.xml (55:60) - android/tutorials/tutorial4/src/main/res/layout/game_button.xml (3:8) duplicated block id: 463 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:40) - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:39) duplicated block id: 464 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:39) - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:40) duplicated block id: 465 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 466 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinInteractor.swift (40:47) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (41:48) duplicated block id: 467 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 468 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (71:76) - ios/tutorials/tutorial4/TicTacToe/Models/PlayerType.swift (23:28) duplicated block id: 469 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 470 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 471 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:39) - ios/tutorials/tutorial4/TicTacToe/Root/RootViewController.swift (31:40) duplicated block id: 472 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootBuilder.swift (48:54) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootBuilder.swift (48:54) duplicated block id: 473 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 474 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 475 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 476 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:39) - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootViewController.swift (31:40) duplicated block id: 477 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinBuilder.swift (27:36) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeBuilder.swift (27:36) duplicated block id: 478 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:39) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootViewController.swift (31:40) duplicated block id: 479 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameViewController.swift (34:44) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameViewController.swift (33:43) duplicated block id: 480 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 481 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeInteractor.swift (81:90) - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (79:88) duplicated block id: 482 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:39) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:40) duplicated block id: 483 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeBuilder.swift (31:41) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeBuilder.swift (42:52) duplicated block id: 484 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedout/LoggedOutView.java (31:40) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedout/LoggedOutView.java (38:47) duplicated block id: 485 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 486 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 487 size: 6 cleaned lines of code in 2 files: - ios/tooling/RIB.xctemplate/ownsView/___FILEBASENAME___Interactor.swift (27:37) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 488 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/RootBuilder.java (69:75) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/RootBuilder.java (77:83) duplicated block id: 489 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootViewController.swift (31:40) - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (31:40) duplicated block id: 490 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 491 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameInteractor.java (37:43) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/randomWinner/RandomWinnerInteractor.java (33:39) duplicated block id: 492 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:39) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:40) duplicated block id: 493 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 494 size: 6 cleaned lines of code in 2 files: - android/libraries/rib-android/build.gradle.kts (25:35) - android/libraries/rib-test/build.gradle.kts (22:32) duplicated block id: 495 size: 6 cleaned lines of code in 2 files: - ios/tooling/RIB.xctemplate/ownsView/___FILEBASENAME___Interactor.swift (27:37) - ios/tutorials/tutorial3/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 496 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 497 size: 6 cleaned lines of code in 2 files: - ios/tooling/RIB.xctemplate/ownsView/___FILEBASENAME___Interactor.swift (27:37) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 498 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (31:41) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameViewController.swift (33:43) duplicated block id: 499 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:39) - ios/tutorials/tutorial3/TicTacToe/Root/RootViewController.swift (31:40) duplicated block id: 500 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:39) - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:40) duplicated block id: 501 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 502 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial1/src/main/java/com/uber/rib/root/RootBuilder.java (68:74) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/RootBuilder.java (77:83) duplicated block id: 503 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootViewController.swift (31:40) - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:39) duplicated block id: 504 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeInteractor.swift (81:90) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeInteractor.swift (86:95) duplicated block id: 505 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (111:116) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (163:168) duplicated block id: 506 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:40) - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (31:40) duplicated block id: 507 size: 6 cleaned lines of code in 2 files: - ios/tooling/RIB.xctemplate/ownsView/___FILEBASENAME___Interactor.swift (27:37) - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 508 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/offgame/OffGameInteractor.java (35:41) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (37:43) duplicated block id: 509 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (88:93) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (163:168) duplicated block id: 510 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (71:76) - ios/tutorials/tutorial4-completed/TicTacToe/Models/PlayerType.swift (23:28) duplicated block id: 511 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/res/values/ub__strings.xml (4:9) - android/tutorials/tutorial3/src/main/res/values/ub__strings.xml (4:9) duplicated block id: 512 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 513 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeBuilder.swift (38:48) - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeBuilder.swift (31:41) duplicated block id: 514 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/res/values/ub__strings.xml (4:9) - android/tutorials/tutorial4/src/main/res/values/ub__strings.xml (4:9) duplicated block id: 515 size: 6 cleaned lines of code in 2 files: - android/libraries/rib-router-navigator/src/main/kotlin/com/uber/rib/core/RouterAndState.kt (81:87) - android/libraries/rib-router-navigator/src/main/kotlin/com/uber/rib/core/RouterAndState.kt (98:104) duplicated block id: 516 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinInteractor.swift (40:47) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeInteractor.swift (41:48) duplicated block id: 517 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameBuilder.swift (26:35) - ios/tutorials/tutorial4/TicTacToe/ScoreBoard/BasicScoreBoardBuilder.swift (27:36) duplicated block id: 518 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 519 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/RootActivity.java (24:30) - android/tutorials/tutorial3/src/main/java/com/uber/rib/RootActivity.java (24:30) duplicated block id: 520 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:39) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:40) duplicated block id: 521 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameViewController.swift (138:143) - ios/tutorials/tutorial4-completed/TicTacToe/Models/PlayerType.swift (23:28) duplicated block id: 522 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 523 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootBuilder.swift (31:41) - ios/tutorials/tutorial4/TicTacToe/Root/RootBuilder.swift (37:47) duplicated block id: 524 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 525 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameViewController.swift (34:44) - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (31:41) duplicated block id: 526 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial1/src/main/java/com/uber/rib/root/RootInteractor.java (25:32) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/RootInteractor.java (26:33) duplicated block id: 527 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (33:43) - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameViewController.swift (33:43) duplicated block id: 528 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootViewController.swift (31:40) - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:39) duplicated block id: 529 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 530 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeBuilder.swift (27:36) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinBuilder.swift (27:36) duplicated block id: 531 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinBuilder.swift (27:36) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeBuilder.swift (27:36) duplicated block id: 532 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 533 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 534 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (31:41) - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameViewController.swift (33:43) duplicated block id: 535 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/randomWinner/RandomWinnerBuilder.java (71:79) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeBuilder.java (68:76) duplicated block id: 536 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (32:42) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeViewController.swift (33:43) duplicated block id: 537 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 538 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 539 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/RootActivity.java (24:30) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/RootActivity.java (24:30) duplicated block id: 540 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (71:80) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (82:91) duplicated block id: 541 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameViewController.swift (138:143) - ios/tutorials/tutorial4/TicTacToe/Models/PlayerType.swift (23:28) duplicated block id: 542 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 543 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/loggedout/LoggedOutView.java (31:40) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedout/LoggedOutView.java (38:47) duplicated block id: 544 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 545 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (32:42) - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameViewController.swift (33:43) duplicated block id: 546 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameViewController.swift (33:43) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeViewController.swift (33:43) duplicated block id: 547 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 548 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeBuilder.swift (31:41) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeBuilder.swift (42:52) duplicated block id: 549 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (31:40) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:40) duplicated block id: 550 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameViewController.swift (33:43) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeViewController.swift (33:43) duplicated block id: 551 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeBuilder.swift (31:41) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeBuilder.swift (42:52) duplicated block id: 552 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:40) - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:39) duplicated block id: 553 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 554 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 555 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 556 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (71:80) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/tictactoe/TicTacToeInteractor.java (82:91) duplicated block id: 557 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (33:43) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameViewController.swift (33:43) duplicated block id: 558 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:40) - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:39) duplicated block id: 559 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial1/src/main/java/com/uber/rib/root/RootBuilder.java (68:74) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/RootBuilder.java (77:83) duplicated block id: 560 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 561 size: 6 cleaned lines of code in 2 files: - ios/tooling/RIB.xctemplate/ownsView/___FILEBASENAME___Interactor.swift (27:37) - ios/tutorials/tutorial4/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 562 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 563 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 564 size: 6 cleaned lines of code in 2 files: - ios/tooling/RIB.xctemplate/ownsView/___FILEBASENAME___Interactor.swift (27:37) - ios/tutorials/tutorial2/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 565 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 566 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (31:41) - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameViewController.swift (34:44) duplicated block id: 567 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 568 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeInteractor.swift (81:90) - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeInteractor.swift (81:90) duplicated block id: 569 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (91:100) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (98:107) duplicated block id: 570 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial3/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 571 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (32:42) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameViewController.swift (33:43) duplicated block id: 572 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 573 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/AppStart/AppDelegate.swift (22:37) - ios/tutorials/tutorial4/TicTacToe/AppStart/AppDelegate.swift (22:37) duplicated block id: 574 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 575 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 576 size: 6 cleaned lines of code in 2 files: - ios/tooling/RIB.xctemplate/ownsView/___FILEBASENAME___Interactor.swift (27:37) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 577 size: 6 cleaned lines of code in 2 files: - ios/tooling/RIB.xctemplate/ownsView/___FILEBASENAME___Interactor.swift (27:37) - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 578 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (31:40) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootViewController.swift (31:40) duplicated block id: 579 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 580 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:40) - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (31:40) duplicated block id: 581 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/AppStart/AppDelegate.swift (22:37) - ios/tutorials/tutorial4-completed/TicTacToe/AppStart/AppDelegate.swift (22:37) duplicated block id: 582 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootRouter.swift (48:54) - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootRouter.swift (64:70) duplicated block id: 583 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial1/src/main/java/com/uber/rib/root/RootBuilder.java (68:74) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/RootBuilder.java (77:83) duplicated block id: 584 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/res/layout/off_game_rib.xml (55:60) - android/tutorials/tutorial4/src/main/res/layout/game_button.xml (3:8) duplicated block id: 585 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial3/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 586 size: 6 cleaned lines of code in 2 files: - android/libraries/rib-router-navigator/src/main/kotlin/com/uber/rib/core/StackRouterNavigator.kt (291:296) - android/libraries/rib-router-navigator/src/main/kotlin/com/uber/rib/core/StackRouterNavigator.kt (323:328) duplicated block id: 587 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 588 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 589 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 590 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameInteractor.swift (42:52) - ios/tutorials/tutorial3/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 591 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 592 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 593 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (31:40) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:40) duplicated block id: 594 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (32:42) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (33:43) duplicated block id: 595 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 596 size: 6 cleaned lines of code in 2 files: - android/tooling/rib-intellij-plugin/src/main/kotlin/com/uber/intellij/plugin/android/rib/RibHierarchyBrowser.kt (60:69) - android/tooling/rib-intellij-plugin/src/main/kotlin/com/uber/intellij/plugin/android/rib/RibViewBrowser.kt (51:60) duplicated block id: 597 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 598 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 599 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootViewController.swift (31:40) - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:39) duplicated block id: 600 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial1/src/main/java/com/uber/rib/RootActivity.java (24:30) - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/RootActivity.java (24:30) duplicated block id: 601 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 602 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 603 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootBuilder.swift (31:41) - ios/tutorials/tutorial2/TicTacToe/Root/RootBuilder.swift (37:47) duplicated block id: 604 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 605 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/LoggedInInteractor.java (29:39) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/LoggedInInteractor.java (39:49) duplicated block id: 606 size: 6 cleaned lines of code in 2 files: - ios/tooling/RIB.xctemplate/ownsView/___FILEBASENAME___Interactor.swift (27:37) - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 607 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootViewController.swift (31:40) - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:39) duplicated block id: 608 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial1/src/main/java/com/uber/rib/RootActivity.java (24:30) - android/tutorials/tutorial2/src/main/java/com/uber/rib/RootActivity.java (24:30) duplicated block id: 609 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 610 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootViewController.swift (31:40) - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (31:40) duplicated block id: 611 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinBuilder.swift (27:36) - ios/tutorials/tutorial4/TicTacToe/TicTacToe/TicTacToeBuilder.swift (27:36) duplicated block id: 612 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootBuilder.swift (48:54) - ios/tutorials/tutorial4/TicTacToe/Root/RootBuilder.swift (48:54) duplicated block id: 613 size: 6 cleaned lines of code in 2 files: - ios/tooling/RIB.xctemplate/ownsView/___FILEBASENAME___Interactor.swift (27:37) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 614 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 615 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (31:40) - ios/tutorials/tutorial3/TicTacToe/Root/RootViewController.swift (31:40) duplicated block id: 616 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeInteractor.swift (41:48) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinInteractor.swift (40:47) duplicated block id: 617 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:40) - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (31:40) duplicated block id: 618 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 619 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/RootBuilder.java (69:75) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/RootBuilder.java (77:83) duplicated block id: 620 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootRouter.swift (48:54) - ios/tutorials/tutorial3/TicTacToe/Root/RootRouter.swift (64:70) duplicated block id: 621 size: 6 cleaned lines of code in 2 files: - ios/tooling/RIB.xctemplate/ownsView/___FILEBASENAME___Interactor.swift (27:37) - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 622 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 623 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/AppStart/AppDelegate.swift (22:37) - ios/tutorials/tutorial4-completed/TicTacToe/AppStart/AppDelegate.swift (22:37) duplicated block id: 624 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial1/src/main/java/com/uber/rib/root/RootInteractor.java (25:32) - android/tutorials/tutorial2/src/main/java/com/uber/rib/root/RootInteractor.java (25:32) duplicated block id: 625 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 626 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 627 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 628 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/LoggedIn/LoggedInBuilder.swift (66:72) - ios/tutorials/tutorial4/TicTacToe/LoggedIn/LoggedInBuilder.swift (66:72) duplicated block id: 629 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameViewController.swift (33:43) - ios/tutorials/tutorial4-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (33:43) duplicated block id: 630 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedout/LoggedOutView.java (38:47) - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedout/LoggedOutView.java (32:41) duplicated block id: 631 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 632 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 633 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameViewController.swift (34:44) - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameViewController.swift (33:43) duplicated block id: 634 size: 6 cleaned lines of code in 2 files: - ios/tooling/RIB.xctemplate/ownsView/___FILEBASENAME___Interactor.swift (27:37) - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 635 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial1/src/main/java/com/uber/rib/RootActivity.java (24:30) - android/tutorials/tutorial3/src/main/java/com/uber/rib/RootActivity.java (24:30) duplicated block id: 636 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootBuilder.swift (31:41) - ios/tutorials/tutorial3/TicTacToe/Root/RootBuilder.swift (37:47) duplicated block id: 637 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/RootActivity.java (24:30) - android/tutorials/tutorial3/src/main/java/com/uber/rib/RootActivity.java (24:30) duplicated block id: 638 size: 6 cleaned lines of code in 2 files: - ios/tooling/RIB.xctemplate/ownsView/___FILEBASENAME___Interactor.swift (27:37) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 639 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 640 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 641 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 642 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (96:104) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedin/LoggedInBuilder.java (172:180) duplicated block id: 643 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootViewController.swift (31:40) - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (31:40) duplicated block id: 644 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 645 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 646 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 647 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/TicTacToe/TicTacToeViewController.swift (33:43) - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameViewController.swift (32:42) duplicated block id: 648 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 649 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial2/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 650 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:39) - ios/tutorials/tutorial4/TicTacToe/Root/RootViewController.swift (31:40) duplicated block id: 651 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial3/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 652 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/Root/RootViewController.swift (31:40) - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:39) duplicated block id: 653 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/OffGame/OffGameInteractor.swift (42:52) duplicated block id: 654 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/OffGame/OffGameInteractor.swift (59:64) - ios/tutorials/tutorial4-completed/TicTacToe/ScoreBoard/BasicScoreBoardInteractor.swift (56:61) duplicated block id: 655 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial3/TicTacToe/Root/RootInteractor.swift (42:52) duplicated block id: 656 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/res/values/ub__strings.xml (4:9) - android/tutorials/tutorial4/src/main/res/values/ub__strings.xml (4:9) duplicated block id: 657 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial3/src/main/java/com/uber/rib/root/loggedout/LoggedOutView.java (32:41) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedout/LoggedOutView.java (38:47) duplicated block id: 658 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial3-completed/src/main/java/com/uber/rib/root/loggedout/LoggedOutInteractor.java (49:62) - android/tutorials/tutorial4/src/main/java/com/uber/rib/root/loggedout/LoggedOutInteractor.java (51:64) duplicated block id: 659 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3-completed/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 660 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/RandomWin/RandomWinInteractor.swift (42:52) duplicated block id: 661 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial3/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 662 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/LoggedOut/LoggedOutViewController.swift (31:40) - ios/tutorials/tutorial3/TicTacToe/TicTacToe/TicTacToeViewController.swift (30:39) duplicated block id: 663 size: 6 cleaned lines of code in 2 files: - android/tutorials/tutorial2/src/main/res/values/ub__strings.xml (4:9) - android/tutorials/tutorial3-completed/src/main/res/values/ub__strings.xml (4:9) duplicated block id: 664 size: 6 cleaned lines of code in 2 files: - ios/tooling/RIB.xctemplate/Default/___FILEBASENAME___Interactor.swift (22:32) - ios/tutorials/tutorial3/TicTacToe/LoggedIn/LoggedInInteractor.swift (42:52) duplicated block id: 665 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/TicTacToe/TicTacToeViewController.swift (31:41) - ios/tutorials/tutorial4/TicTacToe/OffGame/OffGameViewController.swift (33:43) duplicated block id: 666 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial1/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial3/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52) duplicated block id: 667 size: 6 cleaned lines of code in 2 files: - ios/tutorials/tutorial2/TicTacToe/Root/RootInteractor.swift (42:52) - ios/tutorials/tutorial4-completed/TicTacToe/LoggedOut/LoggedOutInteractor.swift (42:52)