Run_qa.py related query

When we use run_qa.py on bert-base using custom data, will it finetune all the layers(head and body/core) or fine tune only the last layer by freezing other layers?
Can we add custom layers and finetune training using run_qa.py, please provide examples.

script: main/examples/pytorch/question-answering/run_qa.py

Reviving this thread, please provide answers.

Example command used:
python run_qa.py
–model_name_or_path bert-base-uncased
–dataset_name squad
–do_train
–do_eval
–per_device_train_batch_size 12
–learning_rate 3e-5
–num_train_epochs 2
–max_seq_length 384
–doc_stride 128
–output_dir /tmp/debug_squad/