add place holder and return type
add delegate
add random text