tp1 almost complete

$ICP