propose to re-factor
all functions above are equal
the only difference Key and Value the are putting to table