protected static function buildChainTasks( \Bond\Entity\Base $entity, $columns )
    {

        $tasks = array();

        foreach( $columns as $column ) {

            $value = $entity->get($column);

            // chain saving
            if( is_object($value) and $value instanceof ChainSavingInterface ) {
                $value->chainSaving( $tasks, $column );
            }

        }

        return $tasks;

    }