with persons;
with Ada.Strings.Unbounded;
with Ada.Text_IO;
with Ada.Float_Text_IO;

package workers is

    package su renames Ada.Strings.Unbounded;
    package to renames Ada.Text_IO;
    package fo renames Ada.Float_Text_IO;

    type worker is new persons.person with private;

    function get_salary(this: worker) return Float;
    procedure set_salary(this: out worker; val: Float);
    overriding procedure greet(this: worker);

private

    type worker is new persons.person with
        record
            salary: Float;
        end record;

end workers;