implement tc104,tc105 (in progress)